UNPKG

@progress/kendo-ui

Version:

This package is part of the [Kendo UI for jQuery](http://www.telerik.com/kendo-ui) suite.

1 lines 9.97 kB
module.exports=function(i){var n={};function o(t){if(n[t])return n[t].exports;var e=n[t]={exports:{},id:t,loaded:!1};return i[t].call(e.exports,e,e.exports,o),e.loaded=!0,e.exports}return o.m=i,o.c=n,o.p="",o(0)}({0:function(t,e,i){t.exports=i(1279)},3:function(t,e){t.exports=function(){throw Error("define cannot be used indirect")}},1051:function(t,e){t.exports=require("./kendo.core")},1052:function(t,e){t.exports=require("./kendo.popup")},1133:function(t,e){t.exports=require("./kendo.fx")},1279:function(t,e,i){var n;i(3),i=[i(1051),i(1052),i(1133)],void 0===(e="function"==typeof(n=function(){var t={id:"floatingactionbutton",name:"Floating Action Button",category:"web",description:"The Floating Action Button represents the primary action of a screen and provides the ability to display related actions.",depends:["core"]},f=window.kendo.jQuery,s=void 0,r=window.kendo,n=r.ui.Widget,i=".kendoFloatingActionButton",a=r.ui,u=r.keys,m=r.support,_=f.extend,c=".",o="id",g="k-hidden",l="left",p="right",e,h="bottom",v="center",b="start",x="auto",k="aria-disabled",C="aria-haspopup",y="aria-controls",O="aria-expanded",w="aria-label",P="role",A="menu",T="menuitem",L="tabindex",E="click",I="expand",H="collapse",M="keydown",N="mouseenter"+i+" mouseleave"+i,d={widget:"k-fab",text:"k-fab-text",icon:"k-fab-icon",list:"k-fab-items",listTop:"k-fab-items-top",listBottom:"k-fab-items-bottom",listTextLeft:"k-text-left",listTextRight:"k-text-right",item:"k-fab-item",itemIcon:"k-fab-item-icon",itemText:"k-fab-item-text",popup:"k-fab-popup",popupTransparent:"k-popup-transparent",disabled:"k-state-disabled",hover:"k-state-hover",focus:"k-state-focus"},B={icon:'<span class="k-fab-icon k-icon k-i-#: icon #"></span>',text:'<span class="k-fab-text">#:text#</span>',item:"# if (text) { # "+'<span class="k-fab-item-text" aria-hidden="true">#:text#</span>'+"# } #"+"# if (icon) { # "+'<span class="k-fab-item-icon k-icon k-i-#: icon #"></span>'+"# } #"},R=n.extend({init:function(t,e){var i=this;n.fn.init.call(i,t,e);i._wrapper();i._content();i._appearance();i._renderList();i._initPopup();i._aria();i._attachEvents();r.notify(i)},options:{name:"FloatingActionButton",icon:"",text:"",items:[],themeColor:"primary",fillMode:"solid",size:"medium",shape:"rectangle",rounded:"full",align:"bottom end",alignOffset:{x:16,y:16},positionMode:"fixed",visible:true,enable:true,enabled:true,_classNames:[]},events:[E,I,H],_offsetMap:{start:l,end:p,top:"top",bottom:h},_reversedOffsetMap:{start:p,end:l},_getAlignment:function(){var t=this,e=t.options.align.split(" ");return{vertical:e[0],horizontal:e[1]}},_getOffset:function(){var t=this,e=t.options,i=m.isRtl(t.element),n=t._getAlignment(),o=e.alignOffset,s=i?t._reversedOffsetMap:t._offsetMap,a=i?t._offsetMap:t._reversedOffsetMap,r={};r[t._offsetMap[n.vertical]]=o.y;r[s[n.horizontal]]=o.x;r[a[n.horizontal]]=x;return r},_wrapper:function(){var t=this;t.wrapper=t.element.addClass(d.widget);t.wrapper.css(t._getOffset())},_content:function(){var t=this,e=t.options,i=e.text,n=e.icon;t.icon(n);t.text(i!==""?i:t.element.text())},_appearance:function(){var t=this,e=t.options;t._align=e.align;t._visible=e.visible;t._enabled=e.enabled;t._updateClassNames()},_updateClassNames:function(){var e=this,t=[d.widget],i=e.options._classNames,n=e._align,o=e._visible,s=e._enabled;f(e.element[0].classList).each(function(){var t=this+"";if(t.indexOf("k-")===0&&i.indexOf(t)===-1)e.element.removeClass(t)});if(typeof n==="string"&&n.split(" ").length==2)t.push("k-"+n.replace(" ","-"));if(o===false)t.push(g);if(s===false)t.push(d.disabled);e.element.addClass(t.join(" "));e._applyCssClasses()},_aria:function(){var t=this,e=t.element,i=t._popup,n=t._enabled;e.attr(k,!n);e.attr(C,i?true:null);e.attr(O,i?false:null);e.attr(y,i?i.element.attr(o):null);if(i){i.element.attr(P,A);i.element.find(c+d.item).attr(P,T).attr(L,-1)}},_renderList:function(){var t=this,e=t.options.items,i=document.body,n=f("<ul>").addClass(d.list);if(!e.length)return;t._list=n.appendTo(i);e.forEach(t._renderListItem.bind(t));n.addClass(t._getListOrientation())},_renderListItem:function(t){var e=this,i=r.template(B.item),n=t.template?r.template(t.template):i,o=f("<li>").addClass(d.item);o.addClass(e._getListItemsAlignment());o.addClass(t.cssClass);o.attr(w,t.title||t.label||"");e._enableListItem(o,t.enabled);o.append(n({icon:t.icon,text:t.label}));e._list.append(o)},_enableListItem:function(t,e){if(!t||e===s)return;t.toggleClass(d.disabled,!e);if(e)t.removeAttr(k);else t.attr(k,true)},_getListOrientation:function(){var t=this,e=t._getAlignment();if(e.vertical===h)return d.listTop;return d.listBottom},_getListItemsAlignment:function(){var t=this,e=m.isRtl(t.element),i=t._getAlignment();if(i.horizontal===b||i.horizontal===v)return!e?d.listTextLeft:d.listTextRight;return!e?d.listTextRight:d.listTextLeft},_getListItemOffset:function(){var t=this,e=t.element,i=t._list.find(c+d.itemIcon),n=0;if(e.length&&i.length&&!t.options.text)n=e.outerWidth()/2-i.first().outerWidth()/2;return n},_initPopup:function(){var t=this,e=t.element,i=t.options,n=t._list,o;if(!n)return;o=t._getPopupPosition();t._popup=new a.Popup(n,_({},i.popup,{anchor:e,appendTo:n.parent(),copyAnchorStyles:false,autosize:false,collision:"",position:o.position,origin:o.origin,animation:{open:{effects:r.parseEffects(a.Popup.fn.options.animation.open.effects,o.flipped)}},open:t._popupOpenHandler.bind(t),close:t._popupCloseHandler.bind(t),activate:t._popupExpandHandler.bind(t),deactivate:t._popupCollapseHandler.bind(t)}));t._popup.element.addClass([d.popup,d.popupTransparent].join(" "));t._setPopupId()},_setPopupId:function(){var t=this,e=t.element.attr(o);if(!e)e=r.guid();t._popup.element.attr(o,e+"-list")},_getPopupPosition:function(){var t=this,e=t.options.align,i=m.isRtl(t.element),n=i?p:l,o=i?l:p,s,a,r=false;switch(e){case"top end":case"middle end":s="bottom "+o;a="top "+o;break;case"bottom start":case"bottom center":s="top "+n;a="bottom "+n;r=true;break;case"bottom end":s="top "+o;a="bottom "+o;r=true;break;default:s="bottom "+n;a="top "+n}return{origin:s,position:a,flipped:r}},_popupOpenHandler:function(){var t=this,e=t._popup,i=this._getListItemOffset();this.element.attr(O,true);e.element.css({paddingLeft:i});e.element.css({paddingRight:i})},_popupCloseHandler:function(){this.element.attr(O,false)},_popupExpandHandler:function(t){if(this.trigger(I))t.preventDefault();this._popup.element.find(c+d.item).first().trigger("focus")},_popupCollapseHandler:function(t){if(this.trigger(H))t.preventDefault()},_attachEvents:function(){var t=this,e=t._popup;t.element.on(E+i,t._click.bind(t));if(e)e.element.on(E+i,c+d.item,t._itemClick.bind(t)).on(M+i,c+d.item,t._itemKeydown.bind(t)).on(N,c+d.item,t._itemHover.bind(t))},_click:function(t){var e=this,i=e.options,n=e._popup;if(e.trigger(E,{event:t})){t.preventDefault();return}if(!n&&!i.items.length)return;if(!n.visible())n.open();else n.close()},_itemClick:function(t){var e=this,i=f(t.target),n,o,s,a;if(!i)return;n=i.closest(c+d.item);if(n.length){o=e.options.items[n.index()];s=o.click&&r.isFunction(o.click)?o.click:null;a={sender:e,target:n,item:o};if(s){e.element.trigger("focus");e._popup.close();s.call(e,a)}}},_itemKeydown:function(t){var e=this,i=f(t.target),n=t.keyCode,o=e.element,s=e._popup,a=e._getAlignment().vertical===h,r=i.hasClass(d.disabled),l=e._list.children(),p=l.index(t.target);if(!i.is(c+d.item))return;t.preventDefault();if((n===u.ENTER||n===u.SPACEBAR)&&!r)e._itemClick(t);if(!a&&n===u.DOWN||a&&n===u.UP){if(p===l.length-1){l.first().trigger("focus");return}f(l[p+1]).trigger("focus")}if(!a&&n===u.UP||a&&n===u.DOWN){if(p===0){l.last().trigger("focus");return}f(l[p-1]).trigger("focus")}if(n===u.ESC||n===u.TAB){s.close();o.trigger("focus")}if(n===u.HOME)l.first().trigger("focus");if(n===u.END)l.last().trigger("focus")},_itemHover:function(t){var e=f(r.eventTarget(t)||t.target).closest(c+d.item);if(!e.hasClass(d.item))return;e.siblings().removeClass(d.hover);e.toggleClass(d.hover)},text:function(t){var e=this,i=e.element,n=i.find(c+d.text),o=r.template(B.text);if(arguments.length===0||t===s)return e._text;e.options.text=e._text=r.htmlEncode(t);i.contents().filter(function(){return this.nodeType===3}).remove();if(t===false||t===null||t===""){e._text="";n.remove();return}if(!n.length){n=f(o({text:t})).appendTo(i);return}n.text(t)},icon:function(t){var e=this,i=e.element,n=i.find(c+d.icon),o=r.template(B.icon);if(arguments.length===0||t===s)return e._icon;e.options.icon=e._icon=r.htmlEncode(t);if(t===false||t===null||t===""){e._icon="";n.remove();return}n.remove();i.prepend(o({icon:t}))},themeColor:function(t){var e=this;if(t===s)return e.options.themeColor;e.setOptions({themeColor:t})},shape:function(t){var e=this;if(t===s)return e.options.shape;this.setOptions({shape:t})},hide:function(){var t=this;t.options.visible=t._visible=false;t._updateClassNames()},show:function(){var t=this;t.options.visible=t._visible=true;t._updateClassNames()},enable:function(t){var e=this;if(t===s)t=true;e.options.enabled=e._enabled=t;e._updateClassNames();e.element.attr(k,!t)},setOptions:function(t){var e=this;n.fn.setOptions.call(e,t);e.element.removeAttr("style");e.element.css(e._getOffset());e._content();e._appearance();if(t.align||t.items){e.element.off(i);e.destroyPopup();e._renderList();e._initPopup();e._attachEvents()}e._aria()},destroyPopup:function(){var t=this;if(t._popup){t._popup.destroy();t._popup=null;t._list.off(i);t._list.remove();t._list=null}},destroy:function(){var t=this;t.destroyPopup();t.element.off(i);n.fn.destroy.call(t)}});return r.cssProperties.registerPrefix("FloatingActionButton","k-fab-"),r.cssProperties.registerValues("FloatingActionButton",[{prop:"fillMode",values:["solid"]},{prop:"themeColor",values:["primary","secondary","tertiary","info","success","warning","error","dark","light","inverse"]},{prop:"rounded",values:r.cssProperties.roundedValues.concat([["full","full"]])}]),a.plugin(R),window.kendo})?n.apply(e,i):n)||(t.exports=e)}});