/*!
* ngOfficeUIFabric
* http://ngofficeuifabric.com
* Angular 1.x directives for Microsoft's Office UI Fabric
* https://angularjs.org & https://dev.office.com/fabric
* v0.1.1
*/
!function(e,t){if("object"==typeof exports&&"object"==typeof module)module.exports=t(require("angular"));else if("function"==typeof define&&define.amd)define(["angular"],t);else{var n=t("object"==typeof exports?require("angular"):e.angular);for(var i in n)("object"==typeof exports?exports:e)[i]=n[i]}}(this,function(e){return function(e){function t(i){if(n[i])return n[i].exports;var o=n[i]={exports:{},id:i,loaded:!1};return e[i].call(o.exports,o,o.exports,t),o.loaded=!0,o.exports}var n={};return t.m=e,t.c=n,t.p="",t(0)}([function(e,t,n){n(1),e.exports=n(3)},function(e,t,n){"use strict";var i=n(2);t.module=i.module("officeuifabric.core",[])},function(t,n){t.exports=e},function(e,t,n){"use strict";var i=n(2),o=n(4),s=n(5),c=n(6),r=n(7),l=n(8),u=n(9),a=n(10),f=n(11);t.module=i.module("officeuifabric.components",[o.module.name,s.module.name,c.module.name,r.module.name,l.module.name,u.module.name,a.module.name,f.module.name])},function(e,t,n){"use strict";var i,o=n(2);!function(e){e[e.link=0]="link",e[e.divider=1]="divider",e[e.header=2]="header",e[e.subMenu=3]="subMenu"}(i||(i={})),t.contextualMenuItemDirectiveName="uifContextualMenuItem";var s=function(){function e(){var e=this;this.restrict="E",this.require="^uifContextualMenu",this.transclude=!0,this.controller=c,this.template=function(t,n){var s=n.uifType;return o.isUndefined(s)?e.templateTypes[i.link]:e.templateTypes[i[s]]},this.replace=!0,this.scope={isDisabled:"=uifIsDisabled",isSelected:"=uifIsSelected",onClick:"&uifClick",text:"=uifText",type:"@uifType"},this.templateTypes={},this.templateTypes[i.subMenu]='
',this.templateTypes[i.link]='',this.templateTypes[i.header]='',this.templateTypes[i.divider]=''}return e.factory=function(){var t=function(){return new e};return t},e.prototype.link=function(e,t,n,i,s){s(function(e){t.find("div").replaceWith(e)}),e.selectItem=function(){i.isMultiSelectionMenu()||i.onDeselectItems(),o.isUndefined(e.isSelected)&&!e.isDisabled?e.isSelected=!0:e.isSelected=!e.isSelected,i.isRootMenu()?i.onCloseMenus(e.$id):e.hasChildMenu?i.onCloseMenus(e.$id):(i.onCloseMenus(null,!0),i.onDeselectItems(!0)),e.hasChildMenu&&e.childMenuCtrl.openMenu(),o.isUndefined(e.onClick)||e.onClick()},e.$on("uif-menu-deselect",function(){e.isSelected=!1}),e.$on("uif-menu-close",function(t,n){e.hasChildMenu&&e.$id!==n&&e.childMenuCtrl.closeMenu()})},e}();t.ContextualMenuItemDirective=s;var c=function(){function e(e,t){this.$scope=e,this.$element=t}return e.prototype.setChildMenu=function(e){this.$scope.hasChildMenu=!0,this.$scope.childMenuCtrl=e},e.$inject=["$scope","$element"],e}();t.ContextualMenuItemController=c,t.contextualMenuDirectiveName="uifContextualMenu";var r=function(){function e(){this.restrict="E",this.require=t.contextualMenuDirectiveName,this.transclude=!0,this.template='',this.replace=!0,this.controller=l,this.scope={isOpen:"=uifIsOpen",multiselect:"@uifMultiselect"}}return e.factory=function(){var t=function(){return new e};return t},e.prototype.link=function(e,n,i,s){var c=n.controller(t.contextualMenuItemDirectiveName);o.isUndefined(c)||c.setChildMenu(s),o.isUndefined(e.multiselect)||"true"!==e.multiselect.toLowerCase()||n.addClass("ms-ContextualMenu--multiselect")},e}();t.ContextualMenuDirective=r;var l=function(){function e(e,n,i){var s=this;this.$scope=e,this.$animate=n,this.$element=i,this.isOpenClassName="is-open",o.isUndefined(i.controller(t.contextualMenuItemDirectiveName))&&(e.isRootMenu=!0),e.$watch("isOpen",function(e){n[e?"addClass":"removeClass"](i,s.isOpenClassName)})}return e.prototype.onDeselectItems=function(e){this.$scope.$broadcast("uif-menu-deselect"),e&&this.$scope.$emit("uif-menu-deselect")},e.prototype.onCloseMenus=function(e,t){t?this.$scope.$emit("uif-menu-close"):this.$scope.$broadcast("uif-menu-close",e)},e.prototype.openMenu=function(){this.$scope.isOpen=!0},e.prototype.closeMenu=function(){this.$scope.isOpen=!1},e.prototype.isRootMenu=function(){return this.$scope.isRootMenu},e.prototype.isMultiSelectionMenu=function(){return o.isUndefined(this.$scope.multiselect)?!1:"true"===this.$scope.multiselect.toLowerCase()},e.$inject=["$scope","$animate","$element"],e}();t.ContextualMenuController=l,t.module=o.module("officeuifabric.components.contextualmenu",["officeuifabric.components"]).directive(t.contextualMenuDirectiveName,r.factory()).directive(t.contextualMenuItemDirectiveName,s.factory())},function(e,t,n){"use strict";var i=n(2),o=function(){function e(){this.template='',this.restrict="E",this.require="^uifDropdown",this.replace=!0,this.transclude=!0}return e.factory=function(){var t=function(){return new e};return t},e.prototype.compile=function(e,t,n){return{post:this.postLink}},e.prototype.postLink=function(e,t,n,i,o){if(!i)throw"Dropdown controller not found!";t.on("click",function(o){e.$apply(function(){i.setViewValue(t.find("span").html(),n.value,o)})})},e}();t.DropdownOptionDirective=o;var s=function(){function e(e,t){this.$element=e,this.$scope=t}return e.prototype.init=function(){var e=this;this.$element.bind("click",function(){if(!e.$scope.disabled){e.$scope.isOpen=!e.$scope.isOpen,e.$scope.$apply();var t=e.$element.find(".ms-Dropdown").width();e.$element.find(".ms-Dropdown-items").css("width",t+"px")}}),"undefined"!=typeof this.$scope.ngModel&&null!=this.$scope.ngModel&&(this.$scope.ngModel.$render=function(){for(var t=e.$element.find("li"),n=0;n{{selectedTitle}}',this.restrict="E",this.transclude=!0,this.require=["uifDropdown","?ngModel"],this.scope={},this.controller=s}return e.factory=function(){var t=function(){return new e};return t},e.prototype.compile=function(e,t,n){return{pre:this.preLink}},e.prototype.preLink=function(e,t,n,i){var o=i[0],s=i[1];e.ngModel=s,o.init(),e.disabled="disabled"in n},e}();t.DropdownDirective=c,t.module=i.module("officeuifabric.components.dropdown",["officeuifabric.components"]).directive("uifOption",o.factory()).directive("uifDropdown",c.factory())},function(e,t,n){"use strict";var i=n(2),o=function(){function e(){this.restrict="E",this.template='',this.scope={uifType:"@"},this.transclude=!0}return e.factory=function(){var t=function(){return new e};return t},e}();t.IconDirective=o,t.module=i.module("officeuifabric.components.icon",["officeuifabric.components"]).directive("uifIcon",o.factory())},function(e,t,n){"use strict";var i=n(2),o=function(){function e(){this.template='',this.scope={placeholder:"=",value:"="}}return e.factory=function(){var t=function(){return new e};return t},e.prototype.link=function(e,t,n){e.isFocus=!1,e.isCancel=!1,e.isLabelHidden=!1,e.isActive=!1,e.inputFocus=function(){e.isFocus=!0,e.isLabelHidden=!0,e.isActive=!0},e.inputBlur=function(){e.isCancel&&(e.value="",e.isLabelHidden=!1),e.isActive=!1,("undefined"==typeof e.value||""===e.value)&&(e.isLabelHidden=!1),e.isFocus=e.isCancel=!1},e.btnMousedown=function(){e.isCancel=!0},e.$watch("value",function(t){e.isFocus||(t&&""!==t?e.isLabelHidden=!0:e.isLabelHidden=!1,e.value=t)}),e.$watch("placeholder",function(t){e.placeholder=t})},e}();t.SearchBoxDirective=o,t.module=i.module("officeuifabric.components.searchbox",["officeuifabric.components"]).directive("uifSearchbox",o.factory())},function(e,t,n){"use strict";var i=n(2),o=function(){function e(){this.restrict="E",this.transclude=!0,this.replace=!0,this.template='',this.controller=s,this.scope={ngShow:"="}}return e.factory=function(){var t=function(){return new e};return t},e.prototype.link=function(e,t,n,o,s){"large"===n.uifSpinnersize&&t.addClass("ms-Spinner--large"),null!=n.ngShow?e.$watch("ngShow",function(e,t,n){e?n.start():n.stop()}):e.start(),s(function(e){if(e.length>0){var n=i.element("");n.addClass("ms-Spinner-label").append(e),t.append(n)}}),e.init()},e}();t.SpinnerDirective=o;var s=function(){function e(e,t,n){var i=this;this.$scope=e,this.$element=t,this.$interval=n,this._offsetSize=.179,this._numCircles=8,this._animationSpeed=90,this._circles=[],e.init=function(){i.createCirclesAndArrange(),i.setInitialOpacity()},e.start=function(){i._animationInterval=n(function(){for(var e=i._circles.length;e--;)i.fadeCircle(i._circles[e])},i._animationSpeed)},e.stop=function(){n.cancel(i._animationInterval)}}return e.prototype.createCirclesAndArrange=function(){for(var e=this.$element[0].clientWidth,t=this.$element[0].clientHeight,n=0,i=e*this._offsetSize,o=2*Math.PI/this._numCircles,s=this._numCircles,r=.5*(e-i);s--;){var l=this.createCircle(),u=Math.round(.5*e+r*Math.cos(n)-.5*l[0].clientWidth)-.5*i,a=Math.round(.5*t+r*Math.sin(n)-.5*l[0].clientHeight)-.5*i;this.$element.append(l),l.css("left",u+"px"),l.css("top",a+"px"),n+=o;var f=new c(l,s);this._circles.push(f)}},e.prototype.createCircle=function(){var e=i.element(""),t=this.$element[0].clientWidth,n=t*this._offsetSize+"px";return e.addClass("ms-Spinner-circle").css("width",n).css("height",n),e},e.prototype.setInitialOpacity=function(){var e,t=this;this._fadeIncrement=1/this._numCircles,this._circles.forEach(function(n,i){e=t._fadeIncrement*(i+1),n.opacity=e})},e.prototype.fadeCircle=function(e){var t=e.opacity-this._fadeIncrement;0>=t&&(t=1),e.opacity=t},e.$inject=["$scope","$element","$interval"],e}(),c=function(){function e(e,t){this.circleElement=e,this.circleIndex=t}return Object.defineProperty(e.prototype,"opacity",{get:function(){return+this.circleElement.css("opacity")},set:function(e){this.circleElement.css("opacity",e)},enumerable:!0,configurable:!0}),e}();t.module=i.module("officeuifabric.components.spinner",["officeuifabric.components"]).directive("uifSpinner",o.factory())},function(e,t,n){"use strict";var i=n(2),o=function(){function e(e){this.$scope=e,this.$scope.orderBy=null,this.$scope.orderAsc=!0}return Object.defineProperty(e.prototype,"orderBy",{get:function(){return this.$scope.orderBy},set:function(e){this.$scope.orderBy=e,this.$scope.$digest()},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,"orderAsc",{get:function(){return this.$scope.orderAsc},set:function(e){this.$scope.orderAsc=e,this.$scope.$digest()},enumerable:!0,configurable:!0}),e.$inject=["$scope"],e}(),s=function(){function e(){this.restrict="E",this.transclude=!0,this.replace=!0,this.template='',this.controller=o,this.controllerAs="table"}return e.factory=function(){var t=function(){return new e};return t},e}();t.TableDirective=s;var c=function(){function e(){this.restrict="E",this.transclude=!0,this.replace=!0,this.template=''}return e.factory=function(){var t=function(){return new e};return t},e.prototype.link=function(e,t,n){"true"===n.uifSelected&&t.addClass("is-selected")},e}();t.TableRowDirective=c;var r=function(){function e(){this.restrict="E",this.template='',this.replace=!0}return e.factory=function(){var t=function(){return new e};return t},e}();t.TableRowSelectDirective=r;var l=function(){function e(){this.restrict="E",this.transclude=!0,this.template='',this.replace=!0}return e.factory=function(){var t=function(){return new e};return t},e}();t.TableCellDirective=l;var u=function(){function e(){this.restrict="E",this.transclude=!0,this.replace=!0,this.template='',this.require="^uifTable"}return e.factory=function(){var t=function(){return new e};return t},e.prototype.link=function(e,t,n,i){e.headerClick=function(e){i.orderBy===n.uifOrderBy?i.orderAsc=!i.orderAsc:(i.orderBy=n.uifOrderBy,i.orderAsc=!0)},e.$watch("table.orderBy",function(e,i,o){if(i!==e&&e===n.uifOrderBy){for(var s=t.parent().children(),c=0;c ')}}),e.$watch("table.orderAsc",function(e,n,i){if(2===t.children().length){var o=n?"ms-Icon--caretDown":"ms-Icon--caretUp",s=e?"ms-Icon--caretDown":"ms-Icon--caretUp";t.children().eq(1).children().eq(0).removeClass(o).addClass(s)}}),"uifOrderBy"in n&&t.on("click",e.headerClick)},e}();t.TableHeaderDirective=u,t.module=i.module("officeuifabric.components.table",["officeuifabric.components"]).directive("uifTable",s.factory()).directive("uifTableRow",c.factory()).directive("uifTableRowSelect",r.factory()).directive("uifTableCell",l.factory()).directive("uifTableHeader",u.factory())},function(e,t,n){"use strict";var i=n(2),o=function(){function e(){this.template=""+'{{uifDescription}}
',this.scope={ngModel:"=",placeholder:"@",uifDescription:"@",uifLabel:"@"},this.restrict="E"}return e.factory=function(){var t=function(){return new e};return t},e.prototype.link=function(e,t,n,i){e.labelShown=!0,e.uifUnderlined="uifUnderlined"in n,e.inputFocus=function(t){e.uifUnderlined&&(e.isActive=!0)},e.inputClick=function(t){e.placeholder&&(e.labelShown=!1)},e.inputBlur=function(n){var i=t.find("input");e.placeholder&&0===i.val().length&&(e.labelShown=!0),e.uifUnderlined&&(e.isActive=!1)}},e}();t.TextFieldDirective=o,t.module=i.module("officeuifabric.components.textfield",["officeuifabric.components"]).directive("uifTextfield",o.factory())},function(e,t,n){"use strict";var i=n(2),o=function(){function e(){this.template='
',this.restrict="E",this.transclude=!0,this.scope={ngModel:"=",uifLabelOff:"@",uifLabelOn:"@",uifTextLocation:"@"}}return e.factory=function(){var t=function(){return new e};return t},e.prototype.link=function(e,t,n){if(e.toggleClass="ms-Toggle",e.uifTextLocation){var i=e.uifTextLocation;i=i.charAt(0).toUpperCase()+i.slice(1),e.toggleClass+=" ms-Toggle--text"+i}},e}();t.ToggleDirective=o,t.module=i.module("officeuifabric.components.toggle",["officeuifabric.components"]).directive("uifToggle",o.factory())}])});