| 17426 | var ordering = ['year', 'quarter', 'month', 'week', 'day', 'hour', 'minute', 'second', 'millisecond']; |
| 17427 | |
| 17428 | function isDurationValid(m) { |
| 17429 | for (var key in m) { |
| 17430 | if (!(indexOf.call(ordering, key) !== -1 && (m[key] == null || !isNaN(m[key])))) { |
| 17431 | return false; |
| 17432 | } |
| 17433 | } |
| 17434 | |
| 17435 | var unitHasDecimal = false; |
| 17436 | for (var i = 0; i < ordering.length; ++i) { |
| 17437 | if (m[ordering[i]]) { |
| 17438 | if (unitHasDecimal) { |
| 17439 | return false; // only allow non-integers for smallest unit |
| 17440 | } |
| 17441 | if (parseFloat(m[ordering[i]]) !== toInt(m[ordering[i]])) { |
| 17442 | unitHasDecimal = true; |
| 17443 | } |
| 17444 | } |
| 17445 | } |
| 17446 | |
| 17447 | return true; |
| 17448 | } |
| 17449 | |
| 17450 | function isValid$1() { |
| 17451 | return this._isValid; |