@@ -90,6 +90,8 @@ export const __meta__ = {
9090            text : "dataTextField" , 
9191            url : "dataUrlField" , 
9292            spriteCssClass : "dataSpriteCssClassField" , 
93+             icon : "dataIconField" , 
94+             iconClass : "dataIconClassField" , 
9395            imageUrl : "dataImageUrlField" , 
9496            imageAttr : "dataImageAttrField" , 
9597            content : "dataContentField" 
@@ -260,7 +262,7 @@ export const __meta__ = {
260262        item 
261263            . filter ( ".k-separator" ) 
262264            . removeClass ( "k-menu-item" ) 
263-             . addClass ( "k-menu- separator" ) 
265+             . addClass ( "k-separator-horizontal " ) 
264266            . empty ( ) 
265267            . append ( " " ) ; 
266268
@@ -542,6 +544,7 @@ export const __meta__ = {
542544            scrollable : false , 
543545            popupCollision : null , 
544546            autoSize : false , 
547+             iconPosition : "before" ,  // "before" or "after" text content 
545548        } , 
546549
547550        _initData : function ( )  { 
@@ -639,8 +642,19 @@ export const __meta__ = {
639642                backwardBtn  =  $ ( that . templates . scrollButton ( {  direction : backwardBtnIcon  } ) ) ; 
640643                forwardBtn  =  $ ( that . templates . scrollButton ( {  direction : forwardBtnIcon  } ) ) ; 
641644
642-                 backwardBtn . prependTo ( that . _scrollWrapper ) ; 
643-                 forwardBtn . appendTo ( that . _scrollWrapper ) ; 
645+                 switch  ( options . scrollable . scrollButtonsPosition )  { 
646+                     case  "start" :
647+                         forwardBtn . prependTo ( that . _scrollWrapper ) ; 
648+                         backwardBtn . prependTo ( that . _scrollWrapper ) ; 
649+                         break ; 
650+                     case  "end" :
651+                         backwardBtn . appendTo ( that . _scrollWrapper ) ; 
652+                         forwardBtn . appendTo ( that . _scrollWrapper ) ; 
653+                         break ; 
654+                     default :
655+                         backwardBtn . prependTo ( that . _scrollWrapper ) ; 
656+                         forwardBtn . appendTo ( that . _scrollWrapper ) ; 
657+                 } 
644658
645659                that . _initScrolling ( that . element ,  backwardBtn ,  forwardBtn ,  isHorizontal ,  isRtl ) ; 
646660
@@ -687,7 +701,10 @@ export const __meta__ = {
687701        _reinitOverflow : function ( options )  { 
688702            var  that  =  this ; 
689703            var  overflowChanged  =  ( ( options . scrollable  &&  ! that . options . scrollable )  ||  ( ! options . scrollable  &&  that . options . scrollable ) )  || 
690-                 ( options . scrollable  &&  that . options . scrollable  &&  options . scrollable . distance  !=  that . options . scrollable . distance )  || 
704+                 ( options . scrollable  &&  that . options . scrollable  &&  ( 
705+                     options . scrollable . distance  !=  that . options . scrollable . distance  || 
706+                     options . scrollable . scrollButtonsPosition  !=  that . options . scrollable . scrollButtonsPosition 
707+                 ) )  || 
691708                options . orientation  !=  that . options . orientation ; 
692709
693710            if  ( overflowChanged )  { 
@@ -2306,6 +2323,8 @@ export const __meta__ = {
23062323                    {  field : "url"  } , 
23072324                    {  field : "cssClass"  } , 
23082325                    {  field : "spriteCssClass"  } , 
2326+                     {  field : "icon"  } , 
2327+                     {  field : "iconClass"  } , 
23092328                    {  field : "imageUrl"  } , 
23102329                    {  field : "imageAttr"  } , 
23112330                    {  field : "attr"  } , 
@@ -2485,15 +2504,21 @@ export const __meta__ = {
24852504                ) , 
24862505                itemWrapper : template ( ( data )  =>  { 
24872506                    var  item  =  data . item ; 
2507+                     var  iconPosition  =  this . options . iconPosition ; 
24882508                    var  url  =  fieldAccessor ( "url" ) ( item ) ; 
24892509                    var  imageUrl  =  fieldAccessor ( "imageUrl" ) ( item ) ; 
2510+                     var  icon  =  fieldAccessor ( "icon" ) ( item ) ; 
2511+                     var  iconClass  =  fieldAccessor ( "iconClass" ) ( item ) ; 
2512+                     var  iconString  =  ( icon  ? kendo . ui . icon ( {  icon : icon ,  iconClass : iconClass  } )  : ''  ) ; 
24902513                    var  imgAttributes  =  fieldAccessor ( "imageAttr" ) ( item ) ; 
24912514                    var  tag  =  url  ? 'a'  : 'span' ; 
24922515
24932516                    return  `<${ tag }   class='${ rendering . textClass ( item ) }  ' role='none' ${ url  ? `href='${ kendo . sanitizeLink ( url ) }  '`  : '' }   >`  + 
24942517                        ( imageUrl  ? `<img ${ rendering . imageCssAttributes ( imgAttributes ) }    alt='' src='${ imageUrl }  ' />`  : '' )  + 
2518+                         ( iconPosition  ==  "before"  ? iconString  : '' )  + 
24952519                        this . templates . sprite ( item )  + 
24962520                        this . options . template ( data )  + 
2521+                         ( iconPosition  ==  "after"  ? iconString  : '' )  + 
24972522                        data . arrow ( data )  + 
24982523                        `</${ tag }  >` ; 
24992524                } ) , 
0 commit comments