ExpirationInput.validate = function validate (state) { var data = value(state.value) return Boolean(data) && expiration.month.isValid(data.month) && expiration.year.isValid(data.year) && !expiration.isPast(data.month, data.year) }
function parse (raw) { var parts = raw.match(MM_YY) if (!parts) return null var rawMonth = parts[1] var rawYear = parts[3] if (!rawYear || rawYear.length % 2) return null return { month: expiration.month.parse(rawMonth), year: expiration.year.parse(rawYear, rawYear.length < 4) } }