@@ -66,20 +66,18 @@ export const custom_date = (date) => {
6666 let checkDate = moment ( date , [ format , moment . ISO_8601 ] , true ) ;
6767 return checkDate . isValid ( ) ;
6868} ;
69-
69+
7070export const after = ( after , fieldName ) => helpers . withParams ( { after} , function ( date , data ) {
7171 // Get check date
7272 const level = fieldName . split ( '.' ) . length - 1 ;
7373 const dataWithParent = this . getDataAccordingToFieldLevel ( this . getRootScreen ( ) . addReferenceToParents ( data ) , level ) ;
7474 dataWithParent . today = moment ( ) . format ( 'YYYY-MM-DD' ) ;
75- const checkDate = moment ( get ( dataWithParent , after , after ) ) ;
75+ const checkDate = moment ( get ( dataWithParent , after . replace ( / [ { } ] / g , '' ) , after ) ) ;
7676 if ( ! checkDate . isValid ( ) ) {
7777 return false ;
7878 }
79-
8079 const inputDate = moment ( date ) . toISOString ( ) ;
81- const afterDate = checkDate . toISOString ( ) ;
82-
80+ const afterDate = moment ( checkDate . toISOString ( ) ) . endOf ( 'day' ) . toDate ( ) . toISOString ( ) ;
8381 return inputDate > afterDate ;
8482} ) ;
8583
@@ -88,13 +86,12 @@ export const after_or_equal = (after_or_equal, fieldName) => helpers.withParams(
8886 const level = fieldName . split ( '.' ) . length - 1 ;
8987 const dataWithParent = this . getDataAccordingToFieldLevel ( this . getRootScreen ( ) . addReferenceToParents ( data ) , level ) ;
9088 dataWithParent . today = moment ( ) . format ( 'YYYY-MM-DD' ) ;
91- const checkDate = moment ( get ( dataWithParent , after_or_equal , after_or_equal ) ) ;
89+ const checkDate = moment ( get ( dataWithParent , after_or_equal . replace ( / [ { } ] / g , '' ) , after_or_equal ) ) ;
9290 if ( ! checkDate . isValid ( ) ) {
9391 return false ;
9492 }
95-
9693 const inputDate = moment ( date ) . toISOString ( ) ;
97- const equalOrAfterDate = checkDate . toISOString ( ) ;
94+ const equalOrAfterDate = moment ( checkDate . toISOString ( ) ) . startOf ( 'day' ) . toDate ( ) . toISOString ( ) ;
9895 return inputDate >= equalOrAfterDate ;
9996} ) ;
10097
@@ -103,13 +100,12 @@ export const before = (before, fieldName) => helpers.withParams({before}, functi
103100 const level = fieldName . split ( '.' ) . length - 1 ;
104101 const dataWithParent = this . getDataAccordingToFieldLevel ( this . getRootScreen ( ) . addReferenceToParents ( data ) , level ) ;
105102 dataWithParent . today = moment ( ) . format ( 'YYYY-MM-DD' ) ;
106- const checkDate = moment ( get ( dataWithParent , before , before ) ) ;
103+ const checkDate = moment ( get ( dataWithParent , before . replace ( / [ { } ] / g , '' ) , before ) ) ;
107104 if ( ! checkDate . isValid ( ) ) {
108105 return false ;
109106 }
110-
111107 const inputDate = moment ( date ) . toISOString ( ) ;
112- const beforeDate = checkDate . toISOString ( ) ;
108+ const beforeDate = moment ( checkDate . toISOString ( ) ) . startOf ( 'day' ) . toDate ( ) . toISOString ( ) ;
113109 return inputDate < beforeDate ;
114110} ) ;
115111
@@ -118,14 +114,12 @@ export const before_or_equal = (before_or_equal, fieldName) => helpers.withParam
118114 const level = fieldName . split ( '.' ) . length - 1 ;
119115 const dataWithParent = this . getDataAccordingToFieldLevel ( this . getRootScreen ( ) . addReferenceToParents ( data ) , level ) ;
120116 dataWithParent . today = moment ( ) . format ( 'YYYY-MM-DD' ) ;
121- const checkDate = moment ( get ( dataWithParent , before_or_equal , before_or_equal ) ) ;
117+ const checkDate = moment ( get ( dataWithParent , before_or_equal . replace ( / [ { } ] / g , '' ) , before_or_equal ) ) ;
122118 if ( ! checkDate . isValid ( ) ) {
123119 return false ;
124120 }
125-
126121 const inputDate = moment ( date ) . toISOString ( ) ;
127- const beforeDate = checkDate . toISOString ( ) ;
128-
122+ const beforeDate = moment ( checkDate . toISOString ( ) ) . endOf ( 'day' ) . toDate ( ) . toISOString ( ) ;
129123 return inputDate <= beforeDate ;
130124} ) ;
131125
@@ -171,7 +165,7 @@ export const requiredUnless = (variable, expected, fieldName) => helpers.withPar
171165 if ( get ( dataWithParent , variable ) == expected ) return true ;
172166 return value instanceof Array ? value . length > 0 : ! ! value ;
173167} ) ;
174-
168+
175169export const sameAs = ( field , fieldName ) => helpers . withParams ( { field} , function ( value , data ) {
176170 const level = fieldName . split ( '.' ) . length - 1 ;
177171 const dataWithParent = this . getDataAccordingToFieldLevel ( this . getRootScreen ( ) . addReferenceToParents ( data ) , level ) ;
0 commit comments