!function(a){var b;window.UIkit&&(b=a(UIkit)),"function"==typeof define&&define.amd&&define("uikit-timepicker",["uikit"],function(){return b||a(UIkit)})}(function(a){"use strict";function b(a,b){a=a||0,b=b||24;var c,d,e={"12h":[],"24h":[]};for(c=a,d="";c0&&c<13&&12!==c&&(e["12h"].push({value:d+":00 AM"}),e["12h"].push({value:d+":30 AM"})),c>=12&&(d-=12,0===d&&(d=12),d<10&&(d="0"+String(d)),e["12h"].push({value:d+":00 PM"}),e["12h"].push({value:d+":30 PM"}));return e}a.component("timepicker",{defaults:{format:"24h",delay:0,start:0,end:24},boot:function(){a.$html.on("focus.timepicker.uikit","[data-uk-timepicker]",function(b){var c=a.$(this);if(!c.data("timepicker")){var d=a.timepicker(c,a.Utils.options(c.attr("data-uk-timepicker")));setTimeout(function(){d.autocomplete.input.focus()},40)}})},init:function(){var c,d=this,e=b(this.options.start,this.options.end);this.options.minLength=0,this.options.template='',this.options.source=function(a){a(e[d.options.format]||e["12h"])},this.element.is("input")?(this.element.wrap('
'),c=this.element.parent()):c=this.element.addClass("uk-autocomplete"),this.autocomplete=a.autocomplete(c,this.options),this.autocomplete.dropdown.addClass("uk-dropdown-small uk-dropdown-scrollable"),this.autocomplete.on("show.uk.autocomplete",function(){var a=d.autocomplete.dropdown.find('[data-value="'+d.autocomplete.input.val()+'"]');setTimeout(function(){d.autocomplete.pick(a,!0)},10)}),this.autocomplete.input.on("focus",function(){d.autocomplete.value=Math.random(),d.autocomplete.triggercomplete()}).on("blur",a.Utils.debounce(function(){d.checkTime()},100)),this.element.data("timepicker",this)},checkTime:function(){var a,b,c,d,e="AM",f=this.autocomplete.input.val();"12h"==this.options.format?(a=f.split(" "),b=a[0].split(":"),e=a[1]):b=f.split(":"),c=parseInt(b[0],10),d=parseInt(b[1],10),isNaN(c)&&(c=0),isNaN(d)&&(d=0),"12h"==this.options.format?(c>12?c=12:c<0&&(c=12),"am"===e||"a"===e?e="AM":"pm"!==e&&"p"!==e||(e="PM"),"AM"!==e&&"PM"!==e&&(e="AM")):c>=24?c=23:c<0&&(c=0),d<0?d=0:d>=60&&(d=0),this.autocomplete.input.val(this.formatTime(c,d,e)).trigger("change")},formatTime:function(a,b,c){return a=a<10?"0"+a:a,b=b<10?"0"+b:b,a+":"+b+("12h"==this.options.format?" "+c:"")}})});