rc-calendar
Advanced tools
Comparing version 3.6.0 to 3.7.0
# History | ||
---- | ||
## 3.7.0 / 2015-06-01 | ||
`improved` move nextDecade and prevDecade button to YearPanel body, optimize disable style for ant-design | ||
## 3.5.0 / 2015-05-26 | ||
@@ -5,0 +9,0 @@ |
@@ -275,2 +275,4 @@ 'use strict'; | ||
var disabledClass = prefixClsFn('disabled-cell'); | ||
var firstDisableClass = prefixClsFn('disabled-cell-first-of-row'); | ||
var lastDisableClass = prefixClsFn('disabled-cell-last-of-row'); | ||
today.setTime(Date.now()); | ||
@@ -309,3 +311,11 @@ var month1 = value.clone(); | ||
for (j = 0; j < DATE_COL_COUNT; j++) { | ||
var next = null; | ||
var last = null; | ||
current = dateTable[passed]; | ||
if (j < DATE_COL_COUNT - 1) { | ||
next = dateTable[passed + 1]; | ||
} | ||
if (j > 0) { | ||
last = dateTable[passed - 1]; | ||
} | ||
var cls = cellClass; | ||
@@ -328,5 +338,15 @@ var disabled = false; | ||
} | ||
if (disabledDate && disabledDate(current, value)) { | ||
cls += ' ' + disabledClass; | ||
disabled = true; | ||
if (disabledDate) { | ||
if (disabledDate(current, value)) { | ||
cls += ' ' + disabledClass; | ||
disabled = true; | ||
if (!last || !disabledDate(last, value)) { | ||
cls += ' ' + firstDisableClass; | ||
} | ||
if (!next || !disabledDate(next, value)) { | ||
cls += ' ' + lastDisableClass; | ||
} | ||
} | ||
} | ||
@@ -333,0 +353,0 @@ |
@@ -67,5 +67,7 @@ 'use strict'; | ||
for (var j = 0; j < COL; j++) { | ||
var startDecade = preYear + index * 10; | ||
var endDecade = preYear + index * 10 + 9; | ||
decades[i][j] = { | ||
startDecade: preYear + index * 10, | ||
endDecade: preYear + index * 10 + 9 | ||
startDecade: startDecade, | ||
endDecade: endDecade | ||
}; | ||
@@ -78,14 +80,26 @@ index++; | ||
var tds = row.map(function (d) { | ||
var startDecade = d.startDecade; | ||
var endDecade = d.endDecade; | ||
var dStartDecade = d.startDecade; | ||
var dEndDecade = d.endDecade; | ||
var classNameMap = {}; | ||
classNameMap[prefixClsFn('cell')] = 1; | ||
classNameMap[prefixClsFn('selected-cell')] = startDecade <= currentYear && currentYear <= endDecade; | ||
classNameMap[prefixClsFn('last-century-cell')] = startDecade < startYear; | ||
classNameMap[prefixClsFn('next-century-cell')] = endDecade > endYear; | ||
classNameMap[prefixClsFn('selected-cell')] = dStartDecade <= currentYear && currentYear <= dEndDecade; | ||
var isLast = dStartDecade < startYear; | ||
var isNext = dEndDecade > endYear; | ||
classNameMap[prefixClsFn('last-century-cell')] = isLast; | ||
classNameMap[prefixClsFn('next-century-cell')] = isNext; | ||
var content; | ||
var clickHandler; | ||
if (isLast) { | ||
clickHandler = _this.previousCentury; | ||
} else if (isNext) { | ||
clickHandler = _this.nextCentury; | ||
} else { | ||
content = dStartDecade + '-' + dEndDecade; | ||
clickHandler = chooseDecade.bind(_this, dStartDecade); | ||
} | ||
return React.createElement( | ||
'td', | ||
{ | ||
key: startDecade, | ||
onClick: chooseDecade.bind(_this, startDecade), | ||
key: dStartDecade, | ||
onClick: clickHandler, | ||
role: 'gridcell', | ||
@@ -98,5 +112,3 @@ className: cx(classNameMap) | ||
className: prefixClsFn('decade') }, | ||
startDecade, | ||
' - ', | ||
endDecade | ||
content | ||
) | ||
@@ -103,0 +115,0 @@ ); |
@@ -13,4 +13,4 @@ 'use strict'; | ||
var DateTimeFormat = require('gregorian-calendar-format'); | ||
var ROW = 3; | ||
var COL = 4; | ||
var ROW = 4; | ||
var COL = 3; | ||
var cx = require('rc-util').classSet; | ||
@@ -17,0 +17,0 @@ var YearPanel = require('./YearPanel'); |
@@ -12,5 +12,4 @@ 'use strict'; | ||
var React = require('react'); | ||
var DateTimeFormat = require('gregorian-calendar-format'); | ||
var ROW = 3; | ||
var COL = 4; | ||
var ROW = 4; | ||
var COL = 3; | ||
var cx = require('rc-util').classSet; | ||
@@ -73,7 +72,4 @@ var DecadePanel = require('./DecadePanel'); | ||
var startYear = parseInt(currentYear / 10, 10) * 10; | ||
var preYear = startYear - 1; | ||
var current = value.clone(); | ||
var locale = this.props.locale; | ||
var yearFormat = locale.yearFormat; | ||
var dateFormatter = new DateTimeFormat(yearFormat); | ||
var previousYear = startYear - 1; | ||
var endYear = startYear + 9; | ||
var years = []; | ||
@@ -84,6 +80,16 @@ var index = 0; | ||
for (var j = 0; j < COL; j++) { | ||
current.setYear(preYear + index); | ||
var year = previousYear + index; | ||
var content; | ||
if (year < startYear) { | ||
content = ''; | ||
} else if (year > endYear) { | ||
content = ''; | ||
} else { | ||
content = year + ''; | ||
} | ||
years[i][j] = { | ||
content: preYear + index, | ||
title: dateFormatter.format(current) | ||
content: content, | ||
year: year, | ||
title: content | ||
}; | ||
@@ -113,5 +119,13 @@ index++; | ||
classNameMap[prefixClsFn('cell')] = 1; | ||
classNameMap[prefixClsFn('selected-cell')] = y.content === currentYear; | ||
classNameMap[prefixClsFn('last-decade-cell')] = y.content < startYear; | ||
classNameMap[prefixClsFn('next-decade-cell')] = y.content > endYear; | ||
classNameMap[prefixClsFn('selected-cell')] = y.year === currentYear; | ||
classNameMap[prefixClsFn('last-decade-cell')] = y.year < startYear; | ||
classNameMap[prefixClsFn('next-decade-cell')] = y.year > endYear; | ||
var clickHandler; | ||
if (y.year < startYear) { | ||
clickHandler = _this2.previousDecade; | ||
} else if (y.year > endYear) { | ||
clickHandler = _this2.nextDecade; | ||
} else { | ||
clickHandler = chooseYear.bind(_this2, y.year); | ||
} | ||
return React.createElement( | ||
@@ -122,3 +136,3 @@ 'td', | ||
key: y.content, | ||
onClick: chooseYear.bind(_this2, y.content), | ||
onClick: clickHandler, | ||
className: cx(classNameMap) | ||
@@ -125,0 +139,0 @@ }, |
{ | ||
"name": "rc-calendar", | ||
"version": "3.6.0", | ||
"version": "3.7.0", | ||
"description": "calendar ui component for react", | ||
@@ -5,0 +5,0 @@ "keywords": [ |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
123061
3692