From 8436f8c582c11e95f7c7c1e5361650fea260e183 Mon Sep 17 00:00:00 2001 From: mmalerba Date: Wed, 20 Sep 2017 20:21:31 -0700 Subject: [PATCH] fix(datepicker): allow date or datetime strings in fromIso8601 (#7220) --- src/lib/core/datetime/native-date-adapter.spec.ts | 3 +++ src/lib/core/datetime/native-date-adapter.ts | 2 +- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/src/lib/core/datetime/native-date-adapter.spec.ts b/src/lib/core/datetime/native-date-adapter.spec.ts index 7ed61ee3753b..8ec5202fa151 100644 --- a/src/lib/core/datetime/native-date-adapter.spec.ts +++ b/src/lib/core/datetime/native-date-adapter.spec.ts @@ -336,8 +336,11 @@ describe('NativeDateAdapter', () => { expect(adapter.fromIso8601('1985-04-12T23:20:50.52Z')).not.toBeNull(); expect(adapter.fromIso8601('1996-12-19T16:39:57-08:00')).not.toBeNull(); expect(adapter.fromIso8601('1937-01-01T12:00:27.87+00:20')).not.toBeNull(); + expect(adapter.fromIso8601('2017-01-01')).not.toBeNull(); + expect(adapter.fromIso8601('2017-01-01T00:00:00')).not.toBeNull(); expect(adapter.fromIso8601('1990-13-31T23:59:00Z')).toBeNull(); expect(adapter.fromIso8601('1/1/2017')).toBeNull(); + expect(adapter.fromIso8601('2017-01-01T')).toBeNull(); }); }); diff --git a/src/lib/core/datetime/native-date-adapter.ts b/src/lib/core/datetime/native-date-adapter.ts index af5fc07637bc..8c672c477f61 100644 --- a/src/lib/core/datetime/native-date-adapter.ts +++ b/src/lib/core/datetime/native-date-adapter.ts @@ -44,7 +44,7 @@ const DEFAULT_DAY_OF_WEEK_NAMES = { * because the regex will match strings an with out of bounds month, date, etc. */ const ISO_8601_REGEX = - /^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(?:\.\d+)?(?:Z|(?:(?:\+|-)\d{2}:\d{2}))$/; + /^\d{4}-\d{2}-\d{2}(?:T\d{2}:\d{2}:\d{2}(?:\.\d+)?(?:Z|(?:(?:\+|-)\d{2}:\d{2}))?)?$/; /** Creates an array and fills it with values. */