@progress/kendo-ui
Version:
This package is part of the [Kendo UI for jQuery](http://www.telerik.com/kendo-ui) suite.
1 lines • 13.4 kB
JavaScript
module.exports=function(e){function t(i){if(s[i])return s[i].exports;var n=s[i]={exports:{},id:i,loaded:!1};return e[i].call(n.exports,n,n.exports,t),n.loaded=!0,n.exports}var s={};return t.m=e,t.c=s,t.p="",t(0)}({0:function(e,t,s){e.exports=s(1431)},3:function(e,t){e.exports=function(){throw Error("define cannot be used indirect")}},1049:function(e,t){e.exports=require("./kendo.core")},1283:function(e,t){e.exports=require("./kendo.progressbar")},1431:function(e,t,s){var i,n,r;!function(o,define){n=[s(1049),s(1283)],i=o,r="function"==typeof i?i.apply(t,n):i,!(void 0!==r&&(e.exports=r))}(function(){return function(e,t){var s=window.kendo,i=s.ui.Widget,n=s.keys,r=e.extend,o=e.proxy,p=".kendoStepper",a="click",l="activate",c="select",d="keydown",h="focusout",u=".",f=" ",_="vertical",v="tabindex",g="aria-current",S="aria-disabled",k="aria-invalid",b="aria-hidden",m={step:"k-step",firstStep:"k-step-first",lastStep:"k-step-last",doneStep:"k-step-done",successStep:"k-step-success",errorStep:"k-step-error",currentStep:"k-step-current",focusStep:"k-step-focus",disabledStep:"k-step-disabled",stepLink:"k-step-link",stepIndicator:"k-step-indicator",stepLabel:"k-step-label"},x={widget:"k-widget k-stepper",stepperLinear:"k-stepper-linear",stepList:"k-step-list",stepListHorizontal:"k-step-list-horizontal",stepListVertical:"k-step-list-vertical"},w=s.Class.extend({init:function(e){this.options=r({},this.options,e),this._render()},options:{label:"",icon:"",successIcon:"",iconTemplate:"",enabled:!0,error:!1,selected:!1,isFirstStep:!1,isLastStep:!1,indicatorVisible:!0,labelVisible:!0,index:0,previous:!1,selectable:!0},_indicatorTemplate:'<span class="k-step-indicator" aria-hidden="true">#if(successIcon && previous && !error) {#<span class="k-step-indicator-icon k-icon k-i-#: successIcon #"></span>#} else if(icon) {#<span class="k-step-indicator-icon k-icon k-i-#: icon #"></span>#} else if(previous && !error) {#<span class="k-step-indicator-icon k-icon k-i-check"></span>#} else {#<span class="k-step-indicator-text">#: index + 1 #</span>#}#</span>',_labelTemplate:'<span class="k-step-label"><span class="k-step-text">#: label #</span> #if(error || (!indicatorVisible && !error && previous)) {#<span class="k-icon#if(previous && !error){# k-i-check#}##if(error){# k-i-warning#}#" aria-hidden="true"></span>#}#</span>',deselect:function(){this.options.selected=!1,this._link(),this._stepClasses()},enable:function(e){this.options.enabled!==e&&(this.options.enabled=e,this.options.selectable=e,this._link(),this._stepClasses())},select:function(){this.options.selected=!0,this._link(),this._stepClasses()},getEnabled:function(){return this.options.enabled},getIndex:function(){return this.options.index},setPrevious:function(e){this.options.previous=e,this._link(),this._stepClasses()},getSelectable:function(){return this.options.selectable},getSelected:function(){return this.options.selected},setValid:function(e){this.options.error===e&&(this.options.error=!e,this._link(),this._stepClasses())},_indicator:function(){var t,i=this.options;i.iconTemplate?(t=e("<span>").addClass(m.stepIndicator).attr(b,"true"),t.append(s.template(i.iconTemplate)(i))):t=s.template(this._indicatorTemplate)(i),this.element.find(u+m.stepLink).append(t)},_label:function(){var e=s.template(this._labelTemplate)(this.options);this.element.find(u+m.stepLink).append(e)},_link:function(){var e=this.options;this.element.find(u+m.stepLink).empty(),this._linkAttributes(),e.indicatorVisible&&this._indicator(),e.labelVisible&&this._label()},_linkAttributes:function(){var e=this.options,t=this.element.find(u+m.stepLink);t.removeAttr(S+f+k+f+g+f+v),e.selected?t.attr(g,"true"):t.attr(v,"-1"),e.enabled&&e.selectable||t.attr(S,"true"),e.error&&t.attr(k,"true")},_render:function(){var t=e("<a href='#'>").addClass(m.stepLink).attr("title",this.options.label);this.element=e("<li>").append(t),this._link(),this._stepClasses()},_stepClasses:function(){var e=this.options,t=m.step;e.isFirstStep&&(t+=f+m.firstStep),e.isLastStep&&(t+=f+m.lastStep),e.enabled||(t+=f+m.disabledStep),e.error&&(t+=f+m.errorStep),e.previous?(t+=f+m.doneStep,e.error||(t+=f+m.successStep)):e.selected&&(t+=f+m.currentStep,t+=f+m.focusStep),this.element.removeClass().addClass(t)}}),L=i.extend({init:function(e,t){var n=this;t=t||{},i.fn.init.call(n,e,t),n._indicatorAndLabel(),n._wrapper(),t.steps&&t.steps.length&&(n._processSteps(t.steps),n._progressBar()),n._attachEvents(),n._resizeHandler=s.onResize(function(){n.resize()})},options:{orientation:"horizontal",linear:!0,indicator:!0,label:!0,selectOnFocus:!1,steps:null,name:"Stepper"},events:[l,c,"kendoKeydown"],destroy:function(){var e=this;e.progressBar&&i.fn.destroy.call(e.progressBar),i.fn.destroy.call(e),s.unbindResize(e._resizeHandler),e.wrapper.off(p)},setOptions:function(e){var t=this;i.fn.setOptions.call(t,e),t.progressBar&&i.fn.destroy.call(t.progressBar),t._indicatorAndLabel(),t._addStepList(),t.options.steps&&t.options.steps.length&&(t._processSteps(t.options.steps),t._progressBar())},enable:function(e){var t=this.steps(),s=this.options.steps,i=function(t,i){t.enable(e),s[i]=t.options};e?this.wrapper.removeAttr(S):this.wrapper.attr(S,"true"),this.progressBar.enable(e),t.forEach(i)},insertAt:function(e,t){var s,i=this.options.steps,n=function(e){e.selected&&(s=e)};t&&!isNaN(e)&&(e<0&&(e=i.length+e),e<0||(i||(i=[]),(0===i.length||e>=i.length)&&(e=i.length),i.forEach(n),t.selected===!0&&(s.selected=!1),i.splice(e,0,t),this._createSteps(),this._renderSteps(),this._resetProgressBar(),this._calculateDimensions()))},next:function(){var e,t;!this._steps||this._steps.length<=1||(e=this.selectedStep,t=e.getIndex(),t+1!==this._steps.length&&this._select(t+1))},previous:function(){var e,t;!this._steps||this._steps.length<=1||(e=this.selectedStep,t=e.getIndex(),0!==t&&this._select(t-1))},removeAt:function(e){var t,s,i,n=this.options.steps;isNaN(e)||!n||n.length<2||e>=n.length||(e<0&&(e=n.length+e),e<0||(t=n.splice(e,1)[0],t.selected===!0&&n.length>0&&(i=e>0?e-1:0,s=n[i],"string"==typeof s&&(s={label:s},n[i]=s),s.selected=!0,s.previous=!1),this._createSteps(),this._renderSteps(),this._resetProgressBar(),this._calculateDimensions()))},resize:function(){this._calculateDimensions()},select:function(e){var s=this;return e===t||null===e||isNaN(e)?s.selectedStep:(e>=s._steps.length||e<0||(e=+e,s._select(e)),t)},steps:function(e){return e===t?this._steps:(this._processSteps(e),this._resetProgressBar(),this._calculateDimensions(),t)},_processSteps:function(e){var t,s=this,i=function(e){e.selected&&(t=e)};e.forEach(i),t||("string"==typeof e[0]&&(e[0]={label:e[0]}),e[0].selected=!0),s.options.steps=e,s._createSteps(),s._renderSteps()},_addStepList:function(){var t=this;t.wrapper.empty().append(e("<ol />").addClass(x.stepList)),t._stepList=t.wrapper.find(u+x.stepList),t._stepList.addClass(t.options.orientation===_?x.stepListVertical:x.stepListHorizontal)},_attachEvents:function(){var e=this;e.wrapper.on(a+p,u+m.step,o(e._selectClickHandler,e)).on(a+p,o(e._wrapperClickHandler,e)).on(h+p,o(e._focusout,e)).on(d+p,e,o(e._keydown,e))},_calculateDimensions:function(){var e=this.options.orientation,t=this._steps.length,i=this._stepList,n=i.find(u+m.step),r=i.width()/t,o=i.height()/t,p=this.progressBar.element,a="margin-left",l={};e===_?(n.css("max-height",100/t+"%"),p.css({"margin-top":-1*(i.height()-16),height:o*(t-1)})):(n.css("max-width",100/t+"%"),s.support.isRtl(this.wrapper)&&(a="margin-right"),l[a]=r/2,l.width=r*(t-1),p.css(l))},_createStep:function(e,t,s){var i=this,n=0===t,o=i.options,p=o.indicator,a=o.label;return e=r({},e,{enabled:e.enabled!==!1}),e=r({},e,{isFirstStep:n,isLastStep:s,indicatorVisible:p,labelVisible:a,index:t}),new w(e)},_createSteps:function(){var e,s,i,n,r=this,o=r.options.steps,p=!1;for(r._steps=[],s=0;s<o.length;s++)n=o[s],"string"==typeof n&&(n={label:n}),n!==t&&(i=s===o.length-1,n.selected?p=!0:n=r._selectablePreviousState(n,p,s),e=r._createStep(n,s,i),r._steps.push(e),e.getSelected()&&(r.selectedStep=e))},_indicatorAndLabel:function(){this.options.indicator||this.options.label||(this.options.indicator=!0,this.options.label=!0)},_focusout:function(e){var t=this;t.wrapper.get(0).contains(e.relatedTarget)||setTimeout(function(){t._leaveStepper()})},_focusStep:function(e){var t=this.wrapper.find(u+m.focusStep),s=this.wrapper.find(u+m.stepLink);e.length>0&&(t.removeClass(m.focusStep),s.attr(v,"-1"),e.find(u+m.stepLink).removeAttr(v)[0].focus())},_focusNextStep:function(){var t=e(document.activeElement).closest(u+m.step),s=t.next();this._focusStep(s)},_focusPreviousStep:function(){var t=e(document.activeElement).closest(u+m.step),s=t.prev();this._focusStep(s)},_focusFirstStep:function(){var e=this.wrapper,t=e.find(u+m.firstStep);this._focusStep(t)},_focusLastStep:function(){var e=this.wrapper,t=e.find(u+m.lastStep);this._focusStep(t)},_keydown:function(t){var s=this,i=t.keyCode,r=e(document.activeElement).closest(u+m.step),o=r.index(),p=s.steps().length;i===n.TAB?t.shiftKey&&o>0?(t.preventDefault(),s._tabKey(t,-1)):!t.shiftKey&&o<p-1&&(t.preventDefault(),s._tabKey(t,1)):i>34&&i<41?(t.preventDefault(),s._navKeys(t)):i===n.ENTER||i===n.SPACEBAR?(t.preventDefault(),s._selectHandler(t,e(document.activeElement).closest(u+m.step))):t.preventDefault()},_leaveStepper:function(){var e=this.wrapper.find(u+m.currentStep),t=this.wrapper.find(u+m.stepLink);t.removeClass(m.focusStep).attr(v,"-1"),e.addClass(m.focusStep),e.find(u+m.stepLink).removeAttr(v)},_navKeys:function(e){var t=this.options.selectOnFocus;t?this._navKeysSelect(e):this._navKeysFocus(e)},_navKeysFocus:function(e){var t=e.keyCode,i=s.support.isRtl(this.wrapper),r=this.options.orientation;switch(t){case n.DOWN:i&&r!==_?this._focusPreviousStep():this._focusNextStep();break;case n.RIGHT:i?this._focusPreviousStep():this._focusNextStep();break;case n.UP:i&&r!==_?this._focusNextStep():this._focusPreviousStep();break;case n.LEFT:i?this._focusNextStep():this._focusPreviousStep();break;case n.HOME:this._focusFirstStep();break;case n.END:this._focusLastStep()}},_navKeysSelect:function(t){var i,r=t.keyCode,o=e(document.activeElement).closest(u+m.step).index(),p=s.support.isRtl(this.wrapper),a=this.steps(),l=this.options.orientation;switch(r){case n.DOWN:i=p&&l!==_?a[o-1]:a[o+1];break;case n.RIGHT:i=p?a[o-1]:a[o+1];break;case n.UP:i=p&&l!==_?a[o+1]:a[o-1];break;case n.LEFT:i=p?a[o+1]:a[o-1];break;case n.HOME:i=a[0];break;case n.END:i=a[a.length-1]}i&&(this._focusStep(i.element),this._selectHandlerOnKey(t,i.element))},_progressBar:function(){var t=this.wrapper,s=this._progressOptions();this.progressBar=e("<div>").kendoProgressBar(s).getKendoProgressBar(),this._calculateDimensions(),t.append(this.progressBar.element)},_progressOptions:function(){var e,t,s=this.options,i=s.orientation,n=s.steps;if(n&&0!==n.length)return e=n.length,t={max:e-1,value:this.select().getIndex(),orientation:i,showStatus:!1},i===_&&(t.reverse=!0),t},_resetProgressBar:function(){var e,t=this.progressBar;t&&(e=this._progressOptions(),t.setOptions(e))},_renderSteps:function(){var e,t,s=this._steps,i=this._stepList;for(i.empty(),t=0;t<s.length;t++)e=s[t],i.append(e.element)},_resetStep:function(e,t,s){var i=this._steps[e];!s&&e<t?i.options.selectable=!0:e===t?(i.options.previous=!1,i.options.selected=!0):s&&e>t?i.options.selectable=!0:(i.options.selected=!1,i.options.previous=s),this.options.linear&&(e<t-1||e>t+1)&&(i.options.selectable=!1),i._link(),i._stepClasses(),this.options.steps[e]=i.options},_select:function(e){var t,s,i,n,r=this.options,o=r.linear,p=this.select(),a=p.getIndex(),l=r.steps,c=this._steps[e];if(c&&c.getEnabled()&&c.getSelectable()){for(e>a?(t=!0,o?(i=Math.max(a-1,0),n=Math.min(e+1,l.length-1)):(i=a,n=e)):(t=!1,o?(i=Math.max(e-1,0),n=Math.min(a+1,l.length-1)):(i=e,n=a)),s=i;s<=n;s++)this._resetStep(s,e,t);this.selectedStep=c,this.progressBar.value(e)}},_selectablePreviousState:function(e,t,s){var i=this.options.steps,n=this.options.linear;return t?e.selectable=!(n&&!i[s-1].selected):(e.previous=!0,e.selectable=!(n&&!i[s+1].selected)),e},_selectClickHandler:function(t){var s=e(t.target).closest(u+m.step);t.preventDefault(),this._preventWrapperClick=!0,this._selectHandler(t,s)},_selectHandler:function(e,s){var i=this,n=i._steps[s.index()],r=this.select();return n&&n.getIndex()!==r.getIndex()&&n.getEnabled()&&n.getSelectable()?(i.trigger(c,{sender:i,originalEvent:e,step:n})||(i._select(n.getIndex()),s.find(u+m.stepLink)[0].focus(),i.trigger(l,{sender:i,originalEvent:e,step:n})),t):(i._focusStep(r.element),t)},_selectHandlerOnKey:function(e,t){var s=this,i=s._steps[t.index()];i.getEnabled()&&i.getSelectable()&&(s.trigger(c,{sender:s,originalEvent:e,step:i})||(s._select(i.getIndex()),t.find(u+m.stepLink)[0].focus(),s.trigger(l,{sender:s,originalEvent:e,step:i})))},_tabKey:function(t,s){var i=this.options.selectOnFocus,n=e(document.activeElement).closest(u+m.step),r=n.index(),o=e(n.parent().find(u+m.step)[r+s]);this._focusStep(o),i&&this._selectHandlerOnKey(t,o)},_wrapper:function(){var e=this,t=e.element;e.wrapper=t,e.wrapper.addClass(x.widget),e.options.linear&&e.wrapper.addClass(x.stepperLinear),this._addStepList()},_wrapperClickHandler:function(e){var t=this.select();this._preventWrapperClick?this._preventWrapperClick=!1:(e.preventDefault(),this._focusStep(t.element))}});s.stepper={Step:w},s.ui.plugin(L)}(window.kendo.jQuery),window.kendo},s(3))}});