@@ -36,7 +36,11 @@ export const carouselProps = {
3636  breakpointMode : { 
3737    default : DEFAULT_CONFIG . breakpointMode , 
3838    validator ( value : BreakpointMode )  { 
39-       return  BREAKPOINT_MODE_OPTIONS . includes ( value ) 
39+       const  isValid  =  BREAKPOINT_MODE_OPTIONS . includes ( value ) 
40+       if  ( ! isValid )  { 
41+         console . warn ( `[vue3-carousel]: Invalid breakpointMode "${ value }  ". Allowed values: ${ BREAKPOINT_MODE_OPTIONS . join ( ', ' ) }  ` ) 
42+       } 
43+       return  isValid 
4044    } , 
4145  } , 
4246  clamp : { 
@@ -47,20 +51,13 @@ export const carouselProps = {
4751    type : String  as  PropType < Dir > , 
4852    default : DEFAULT_CONFIG . dir , 
4953    validator ( value : Dir ,  props : {  height ?: string  } )  { 
50-       // The value must match one of these strings 
5154      if  ( ! DIR_OPTIONS . includes ( value ) )  { 
55+         console . warn ( `[vue3-carousel]: Invalid dir "${ value }  ". Allowed values: ${ DIR_OPTIONS . join ( ', ' ) }  ` ) 
5256        return  false 
5357      } 
54- 
55-       const  normalizedDir  = 
56-         value  in  DIR_MAP  ? DIR_MAP [ value  as  NonNormalizedDir ]  : ( value  as  NormalizedDir ) 
57-       if  ( 
58-         [ 'ttb' ,  'btt' ] . includes ( normalizedDir )  && 
59-         ( ! props . height  ||  props . height  ===  'auto' ) 
60-       )  { 
61-         console . warn ( 
62-           `[vue3-carousel]: The dir "${ value }  " is not supported with height "auto".` 
63-         ) 
58+       const  normalizedDir  =  value  in  DIR_MAP  ? DIR_MAP [ value  as  NonNormalizedDir ]  : ( value  as  NormalizedDir ) 
59+       if  ( [ "ttb" ,  "btt" ] . includes ( normalizedDir )  &&  ( ! props . height  ||  props . height  ===  "auto" ) )  { 
60+         console . warn ( `[vue3-carousel]: The dir "${ value }  " is not supported with height "auto".` ) 
6461      } 
6562      return  true 
6663    } , 
@@ -139,14 +136,22 @@ export const carouselProps = {
139136    type : String  as  PropType < SlideEffect > , 
140137    default : DEFAULT_CONFIG . slideEffect , 
141138    validator ( value : SlideEffect )  { 
142-       return  SLIDE_EFFECTS . includes ( value ) 
139+       const  isValid  =  SLIDE_EFFECTS . includes ( value ) 
140+       if  ( ! isValid )  { 
141+         console . warn ( `[vue3-carousel]: Invalid slideEffect "${ value }  ". Allowed values: ${ SLIDE_EFFECTS . join ( ', ' ) }  ` ) 
142+       } 
143+       return  isValid 
143144    } , 
144145  } , 
145146  // control snap position alignment 
146147  snapAlign : { 
147148    default : DEFAULT_CONFIG . snapAlign , 
148149    validator ( value : SnapAlign )  { 
149-       return  SNAP_ALIGN_OPTIONS . includes ( value ) 
150+       const  isValid  =  SNAP_ALIGN_OPTIONS . includes ( value ) 
151+       if  ( ! isValid )  { 
152+         console . warn ( `[vue3-carousel]: Invalid snapAlign "${ value }  ". Allowed values: ${ SNAP_ALIGN_OPTIONS . join ( ', ' ) }  ` ) 
153+       } 
154+       return  isValid 
150155    } , 
151156  } , 
152157  // toggle touch dragging 
0 commit comments