blackbaud-skyux
Version:
Sky UX provides an HTML, CSS and JavaScript framework to implement Blackbaud's design patterns.
2 lines • 291 kB
JavaScript
!function(){"use strict";angular.module("sky.accordion",["sky.accordion.uibaccordiongroup"])}(),function(){"use strict";angular.module("sky.alert",["sky.alert.component"])}(),function(){"use strict";angular.module("sky.avatar",["sky.avatar.config","sky.avatar.component"])}(),function(){"use strict";angular.module("sky.card",["sky.card.directive"])}(),function(){"use strict";angular.module("sky.carousel",["sky.carousel.component","sky.carousel.item.component"])}(),function(){"use strict";angular.module("sky.checklist",["sky.checklist.directive","sky.checklist.column.directive","sky.checklist.columns.directive","sky.checklist.model.directive"])}(),function(){"use strict";angular.module("sky.chevron",["sky.chevron.component"])}(),function(){"use strict";angular.module("sky.contextmenu",["sky.contextmenu.directive","sky.contextmenu.button.directive","sky.contextmenu.item.directive","sky.submenu"])}(),function(){"use strict";angular.module("sky.submenu",["sky.submenu.directive"])}(),function(){"use strict";angular.module("sky.datepicker",["sky.datepicker.directive"])}(),function(){"use strict";angular.module("sky.definitionlist",["sky.definitionlist.component","sky.definitionlistcontent.component"])}(),function(){"use strict";angular.module("sky.error",["sky.error.directive","sky.errormodal.service"])}(),function(){"use strict";angular.module("sky.filter",["sky.filter.modal.footer.component","sky.filter.button.component","sky.filter.summary.component","sky.filter.summary.item.component"])}(),function(){"use strict";angular.module("sky.infinitescroll",["sky.infinitescroll.component"])}(),function(){"use strict";angular.module("sky.keyinfo",["sky.keyinfo.component"])}(),function(){"use strict";angular.module("sky.listbuilder",["sky.listbuilder.component","sky.listbuilder.toolbar.component","sky.listbuilder.footer.component","sky.listbuilder.content.component","sky.listbuilder.content.custom.component","sky.listbuilder.content.custom.item.directive","sky.listbuilder.card.component","sky.listbuilder.cards.component","sky.listbuilder.grid.component","sky.listbuilder.switcher.component","sky.listbuilder.repeater.component","sky.listbuilder.repeater.item.directive"])}(),function(){"use strict";angular.module("sky.modal",["sky.modal.directive","sky.modal.body.directive","sky.modal.header.directive","sky.modal.footer.directive","sky.modal.footer.button.directive","sky.modal.footer.button.primary.directive","sky.modal.footer.button.cancel.directive","sky.modal.factory"])}(),function(){"use strict";angular.module("sky.pagesummary",[])}(),function(){"use strict";angular.module("sky.phonefield",["sky.phonefield.directive"])}(),function(){"use strict";angular.module("sky.reorder",["sky.reorder.component"])}(),function(){"use strict";angular.module("sky.reordertable",["sky.reordertable.component"])}(),function(){"use strict";angular.module("sky.repeater",["sky.repeater.component","sky.repeater.item.directive"])}(),function(){"use strict";angular.module("sky.search",["sky.search.input.component","sky.search.container.directive"])}(),function(){"use strict";angular.module("sky.sectionedform",["sky.sectionedform.component"])}(),function(){"use strict";angular.module("sky.selectfield",["sky.selectfield.directive","sky.selectfieldpicker.directive","sky.selectfield.item.animation"])}(),function(){"use strict";angular.module("sky.sort",["sky.sort.component","sky.sort.item.component"])}(),function(){"use strict";angular.module("sky.summary.actionbar",["sky.summary.actionbar.component","sky.summary.actionbar.primary.component","sky.summary.actionbar.secondary.component","sky.summary.actionbar.secondary.actions.component","sky.summary.actionbar.cancel.component"])}(),function(){"use strict";angular.module("sky.wait",["sky.wait.directive","sky.wait.factory"])}(),function(){"use strict";function a(a){return{require:"^uibAccordion",transclude:!0,replace:!0,restrict:"E",templateUrl:function(a,b){return b.templateUrl||"sky/templates/accordion/uib.accordiongroup.directive.html"},scope:{heading:"@",panelClass:"@?",isOpen:"=?",isDisabled:"=?"},controller:function(){this.setHeading=function(a){this.heading=a}},link:function(b,c,d,e){var f;a.warn("uibAccordionGroup should not be used as an element directive, instead use as an attribute directive"),e.addGroup(b),b.openClass=d.openClass||"panel-open",b.panelClass=d.panelClass||"panel-default",b.$watch("isOpen",function(a){c.toggleClass(b.openClass,!!a),a&&e.closeOthers(b)}),b.toggleOpen=function(a){b.isDisabled||a&&32!==a.which||(b.isOpen=!b.isOpen)},f="accordiongroup-"+b.$id+"-"+Math.floor(1e4*Math.random()),b.headingId=f+"-tab",b.panelId=f+"-panel"}}}a.$inject=["$log"],angular.module("sky.accordion.uibaccordiongroup",["ui.bootstrap.accordion"]).directive("uibAccordionGroup",a)}(),function(){"use strict";function a(){return{controller:angular.noop,controllerAs:"bbActionBar",bindToController:!0,scope:{},transclude:!0,restrict:"E",templateUrl:"sky/templates/actionbar/actionbar.html"}}function b(a,b){return{transclude:!0,controller:function(){function b(){(null===c.title||angular.isUndefined(c.title))&&(c.title=a.action_bar_actions)}var c=this;c.$onInit=b},controllerAs:"bbActionBarItemGroup",bindToController:{title:"=?bbActionBarItemGroupTitle"},restrict:"E",require:"bbActionBarItemGroup",scope:{},link:function(a,c,d,e){function f(a){a.xs?c.find(".bb-action-bar-buttons > ng-transclude").appendTo(c.find(".bb-action-bar-dropdown > .dropdown > ul")):c.find(".bb-action-bar-dropdown .dropdown > ul > ng-transclude").appendTo(c.find(".bb-action-bar-buttons"))}b.register(f),a.$on("$destroy",function(){b.unregister(f)}),e.toggleId="bb-action-bar-item-group-"+a.$id},templateUrl:"sky/templates/actionbar/actionbaritemgroup.html"}}function c(a){return{replace:!0,controller:angular.noop,controllerAs:"bbActionBarItem",bindToController:{bbActionBarItemLabel:"@"},scope:{},require:"?^bbActionBarItemGroup",transclude:!0,restrict:"E",link:function(b,c,d,e){function f(a){a.xs?c.parent().is("li")||c.wrap('<li role="menuitem"></li>'):c.parent().is("li")&&c.unwrap()}null!==e&&(a.register(f),b.$on("$destroy",function(){a.unregister(f),c.parent().is("li")&&c.unwrap()}))},templateUrl:"sky/templates/actionbar/actionbaritem.html"}}b.$inject=["bbResources","bbMediaBreakpoints"],c.$inject=["bbMediaBreakpoints"],angular.module("sky.actionbar",["sky.resources","sky.mediabreakpoints","ui.bootstrap.dropdown"]).directive("bbActionBar",a).directive("bbActionBarItemGroup",b).directive("bbActionBarItem",c)}(),function(){"use strict";function a(){var a=this;a.close=function(){a.bbAlertClosed=!0}}angular.module("sky.alert.component",["sky.resources"]).component("bbAlert",{bindings:{bbAlertType:"@",bbAlertCloseable:"@",bbAlertClosed:"=?"},templateUrl:"sky/templates/alert/alert.html",transclude:!0,controller:a})}(),function(a){"use strict";function b(b,c){var d,e;return d=angular.extend({},a.fn.autoNumeric.defaults,b.number),c&&(e=angular.isObject(c)?c:b[c],e&&angular.extend(d,e)),d}angular.module("sky.autonumeric",["sky.resources","sky.window"]).constant("bbAutonumericConfig",{number:{aSep:",",dGroup:3,aDec:".",pSign:"p",mDec:2},money:{aSign:"$"},percent:{aSign:"%",pSign:"s",mDec:0}}).directive("bbAutonumeric",["$timeout","bbAutonumericConfig","bbWindow","$document",function(a,c,d,e){return{require:"ngModel",restrict:"A",link:function(f,g,h,i){function j(){g.autoNumeric("update",angular.extend({},b(c,h.bbAutonumeric),m))}function k(a){h.bbAutonumeric&&a.addClass("bb-autonumeric-"+h.bbAutonumeric)}function l(){return f.$apply(function(){var a=parseFloat(g.autoNumeric("get"));return isNaN(a)&&(a=null),i.$setViewValue(a)})}var m={},n=d.isIosUserAgent();h.bbAutonumericSettings&&f.$watch(h.bbAutonumericSettings,function(a){m=a||{},j()},!0),g.autoNumeric(b(c,h.bbAutonumeric)),k(g),f.$watch(h.ngModel,function(b,c){var d,f;void 0===b||null===b||isNaN(b)?null===b&&g.val(null):(parseFloat(b)!==parseFloat(c)&&(f=g[0].selectionStart),g.autoNumeric("set",b),d=g.autoNumeric("get"),parseFloat(d)!==parseFloat(b)?a(l):g[0]&&angular.isFunction(g[0].setSelectionRange)&&angular.isDefined(f)&&a(function(){e[0]&&e[0].activeElement===g[0]&&g[0].setSelectionRange(f,f)}))}),g.on("keydown",function(a){13===a.which&&l()}),g.on("change paste onpaste",function(){l()}),g.on("focusin.bbAutonumeric",function(){a(function(){g.is(":focus")&&(n?g[0].setSelectionRange(0,9999):g.select())})})}}}]).filter("bbAutonumeric",["bbAutonumericConfig","bbResources",function(c,d){return function(e,f,g){var h,i,j,k,l,m,n;return null===e||angular.isUndefined(e)?"":isNaN(e)?e:(n=a("<span></span>"),l=b(c,f),g&&("s"===l.pSign&&(h=l.aSign,l.aSign=""),e=Math.round(e),e>=1e9?(i=1e8,m=d.autonumeric_abbr_billions):e>=1e6?(i=1e5,m=d.autonumeric_abbr_millions):e>=1e4&&(i=100,m=d.autonumeric_abbr_thousands),m?(e=Math.floor(e/i)/10,j=Math.floor(e)===e?0:1):j=0,l.mDec=j),n.autoNumeric(l),n.autoNumeric("set",e),k=n.text(),m&&(k+=m),g&&"s"===l.pSign&&h&&(k+=h),k)}}])}(jQuery),function(a){"use strict";function b(b,c,d,e,f,g,h,i,j,k){function l(a){j.find(".bb-avatar-image").css("background-image","url("+a+")")}function m(a){return a.charAt(0).toUpperCase()}function n(a){var b,c;return a&&(c=a.split(" "),b=m(c[0]),c.length>1&&(b+=m(c[c.length-1]))),b}function o(a){var b,c,d=h.getColorSequence(6);return a?(c=a.charCodeAt(0)+a.charCodeAt(a.length-1)+a.length,b=Math.abs(c%d.length)):b=0,d[b]}function p(){var b,c,e,f,g,h="46px",i=100;g=v.bbAvatarName,f=n(g),b=j.find(".bb-avatar-initials")[0],c=b.getContext("2d"),e=d.devicePixelRatio,e&&(a(b).attr("width",i*e).attr("height",i*e),c.scale(e,e)),c.fillStyle=o(g),c.fillRect(0,0,b.width,b.height),f&&(c.font=h+" Arial",c.textAlign="center",c.fillStyle="#FFF",c.fillText(f,.5*i,i*(2/3)))}function q(){t&&(d.URL.revokeObjectURL(t),t=null)}function r(){var a,b;q(),u&&(a=v.bbAvatarSrc,a?(a instanceof d.File?(b=d.URL.createObjectURL(a),t=b):b=a,l(b)):p())}function s(a){var c,d,h;0!==a.type.toUpperCase().indexOf("IMAGE/")?(c=i.avatar_error_not_image_description,d=i.avatar_error_not_image_title):(h=b("bbFileSize")(e.maxFileSize),c=g.formatText(i.avatar_error_too_large_description,h),d=i.avatar_error_too_large_title),f.open({errorDescription:c,errorTitle:d})}var t,u,v=this;v.onTemplateLoad=function(){u=!0},v.photoDrop=function(a,b){angular.isArray(b)&&b.length>0?s(b[0]):v.bbAvatarChange({file:a[0]})},v.showInitials=function(){return!(!v.bbAvatarName||v.bbAvatarSrc)},j.attr("bb-avatar-change")&&(v.canChange=!0),k.$watch(function(){return u},r),k.$watch(function(){return v.bbAvatarSrc},r),k.$watch(function(){return v.bbAvatarName},r),k.$on("$destroy",function(){q()}),v.maxFileSize=e.maxFileSize}function c(a,b,c){var d;a.html(b.get("sky/templates/avatar/avatar.component.html")),d=a.find(".bb-avatar-file-drop"),d.attr("bb-file-drop-max-size",c.maxFileSize)}b.$inject=["$filter","$templateCache","$window","bbAvatarConfig","bbErrorModal","bbFormat","bbPalette","bbResources","$element","$scope"],c.$inject=["$element","$templateCache","bbAvatarConfig"],angular.module("sky.avatar.component",["sky.avatar.config","sky.error","sky.format","sky.palette","sky.resources"]).component("bbAvatar",{bindings:{bbAvatarSrc:"=",bbAvatarName:"=",bbAvatarChange:"&"},controller:b,template:c})}(jQuery),function(){"use strict";var a={maxFileSize:5e5};angular.module("sky.avatar.config",[]).constant("bbAvatarConfig",a)}(),function(){"use strict";function a(a){function b(a){var b=this;a.$on("$destroy",function(){b.onDestroy(),b=null})}function c(){function a(a,b,c,d){var f=d[0],g=d[1];f.el=b,g["set"+e](f)}return{restrict:"E",require:["bbCard"+e,"^bbCard"],controller:d,controllerAs:"bbCard"+e,bindToController:!0,link:a,scope:{}}}var d,e=a.name;b.$inject=["$scope"],d="BBCard"+e+"Controller",f.controller(d,b).directive("bbCard"+e,c)}function b(a){var b=a.name;return b.charAt(0).toLowerCase()+b.substr(1)+"Ctrl"}function c(a,c){function d(a){var c=a.name;i["set"+c]=function(c){var d=b(a);i[d]=c,c.onDestroy=function(){i[d]=null}}}function f(){return"true"===i.bbCardSelectable}function h(b){a(function(){angular.isFunction(i.bbCardSelectionToggled)&&i.bbCardSelectionToggled({isSelected:b})})}var i=this;i.cardSelectionToggled=h,i.cardIsSelectable=f,e.forEach(d),i.getClass=function(){var a=[];switch(i.bbCardSize){case"small":a.push("bb-card-small")}return i.bbCardSelectable&&(a.push("bb-card-selectable"),i.bbCardSelected&&a.push("bb-card-selected")),a},g++,i.cardCheckId="bb-card-check-"+g,c.$emit("bbCardInitialized",{cardCtrl:i})}function d(){function a(a,c,d,f){function g(d){a.$watch(function(){return h[b(d)]},function(a){a&&c.find(".bb-card-"+d.cls).empty().append(a.el)})}var h=f[0];e.forEach(g)}return{bindToController:{bbCardSelectable:"@?",bbCardSelected:"=?",bbCardSelectionToggled:"&?",bbCardSize:"@?"},require:["bbCard"],controller:"BBCardController",controllerAs:"bbCard",link:a,restrict:"E",scope:{},templateUrl:"sky/templates/card/card.directive.html",transclude:!0}}var e=[{name:"Title",cls:"title"},{name:"Content",cls:"content"},{name:"Actions",cls:"actions"}],f=angular.module("sky.card.directive",["sky.check"]),g=0;c.$inject=["$timeout","$scope"],f.controller("BBCardController",c).directive("bbCard",d),e.forEach(a)}(),function(){"use strict";function a(a,c,d,e){function f(){return c[0].querySelectorAll(".bb-carousel-item")}function g(a){return a>=0&&a<f().length}function h(){var a,c,d=f().length;if(o.dots=[],d<=b)for(a=0;a<d;a++)o.dots.push(a);else for(a=0;a<b;a++)c=Math.floor(a*d/b),o.dots.push(c)}function i(a){return a?"translate3d("+a+"%, 0, 0) scale(0.9)":"none"}function j(a){var b,c,d=f();for(b=0,c=d.length;b<c;b++)if(a.elIsItem(d[b]))return b}function k(a){var b,c,d,e=o.items,g=f();if(a<g.length)for(b=g[a],c=0,d=e.length;c<d;c++)if(e[c].elIsItem(b))return e[c]}function l(a){a.bbCarouselSelectedIndex&&angular.isDefined(a.bbCarouselSelectedIndex.currentValue)&&o.setSelectedItem(a.bbCarouselSelectedIndex.currentValue||0,!0)}var m,n,o=this;m=0,o.items=[],o.addItem=function(a){o.items.push(a),(angular.isUndefined(o.bbCarouselSelectedIndex)&&1===o.items.length||o.bbCarouselSelectedIndex===o.items.length-1)&&o.setSelectedItem(o.bbCarouselSelectedIndex||0,!0)},o.removeItem=function(a){var b,c,d,e,f=o.items;for(c=0,e=f.length;c<e;c++)if(f[c]===a){d=c;break}f.splice(d,1),m>=f.length?o.setSelectedItem(f.length-1,!0):(b=j(n),b>=0&&b!==m&&o.setSelectedItem(b,!0))},o.setSelectedItem=function(a,b){var c,d,e,h,l;if("number"!=typeof a&&(a=j(a)),g(a)){if(l=a*-100,e=f())for(c=0,h=e.length;c<h;c++)d=e[c],d.style.transform=i(l),l+=100;m=a,n=k(a),o.allowPrevious=m>0,o.allowNext=m<e.length-1,!b&&angular.isFunction(o.bbCarouselSelectedIndexChange)&&o.bbCarouselSelectedIndexChange({index:m})}},o.nextCard=function(){o.setSelectedItem(m+1)},o.previousCard=function(){o.setSelectedItem(m-1)},o.dotIsSelected=function(a){var b,c=o.dots,d=m;if(a===d)return!0;if(b=c.indexOf(a),b===c.length-1){if(m>c[b])return!0}else if(d>c[b]&&d<c[b+1])return!0;return!1},o.getDotLabel=function(a){return d.formatText(e.carousel_dot_label,a+1)},a.$watchCollection(function(){return o.items},function(){h(),o.setSelectedItem(m,!0)}),o.$onChanges=l}var b=10;a.$inject=["$scope","$element","bbFormat","bbResources"],angular.module("sky.carousel.component",["ngTouch","sky.format","sky.resources"]).component("bbCarousel",{bindings:{bbCarouselSelectedIndex:"<?",bbCarouselSelectedIndexChange:"&?",bbCarouselStyle:"@"},templateUrl:"sky/templates/carousel/carousel.component.html",transclude:!0,controller:a})}(),function(){"use strict";function a(a,b){var c=this;c.elIsItem=function(b){return a[0].contains(b)},c.itemClick=function(){c.carouselCtrl.setSelectedItem(c)},c.$onInit=function(){c.carouselCtrl.addItem(c)},c.$onDestroy=function(){a.find(".bb-carousel-item").removeClass("bb-carousel-item"),c.carouselCtrl.removeItem(c)},a.on("focusin",function(){c.carouselCtrl.setSelectedItem(c),b.$apply()})}a.$inject=["$element","$scope"],angular.module("sky.carousel.item.component",[]).component("bbCarouselItem",{bindings:{},require:{carouselCtrl:"^bbCarousel"},templateUrl:"sky/templates/carousel/carousel.item.component.html",transclude:!0,controller:a})}(),function(){"use strict";angular.module("sky.check",[]).directive("bbCheck",["$templateCache","$compile",function(a,b){function c(c,d){var e;return e=a.get("sky/templates/check/"+c+".html"),d&&(e=b(e)(d)),angular.element(e)}return{link:function(a,b,d){var e,f=b.parent("label");f.length<1?b.wrap(c("wrapper")):(f.addClass("bb-check-wrapper"),f.contents().filter(function(){return 3===this.nodeType&&/\S/.test(this.textContent)}).wrap(c("labeltext"))),e=c("styled"+d.type,a),b.after(e)}}}])}(),function(){"use strict";function a(a,c,d){function e(a,b){return!b||a.category===b}function f(a,b){return!(o.bbChecklistSubsetLabel&&!angular.isUndefined(a[o.bbChecklistSubsetProperty])&&a[o.bbChecklistSubsetProperty]!==!1)||(o.subsetExclude?a[o.bbChecklistSubsetProperty]!==b:a[o.bbChecklistSubsetProperty]===b)}function g(a){return c.contains(o.bbChecklistSelectedItems,a)}function h(a,c,d){var g,h,i,j;if(e(a,c)&&f(a,o.subsetSelected)){if(!d)return!0;for(g=0,i=b.length;g<i;g++)if(h=b[g],a.hasOwnProperty(h)&&(j=a[h],angular.isString(j)&&j.toUpperCase().indexOf(d)>=0))return!0}return!1}function i(){var a,b,c,d,e=o.bbChecklistItems,f=(o.searchText||"").toUpperCase(),g=o.selectedCategory;if(f||g||o.bbChecklistSubsetLabel||o.onlyShowSelected)for(a=[],b=0,d=e.length;b<d;b++)c=e[b],h(c,g,f)&&a.push(c);else a=e.slice(0);o.filteredItems=a}function j(){o.onlyShowSelected?o.filteredItems=o.bbChecklistSelectedItems||[]:o.filterLocal?i():o.bbChecklistFilterCallback&&o.bbChecklistFilterCallback({searchText:o.searchText,category:o.selectedCategory,subsetSelected:o.subsetSelected})}function k(a){var b=angular.copy(o.filteredItems);b.forEach(a)}function l(a){c.add(o.bbChecklistSelectedItems,a)}function m(a){c.remove(o.bbChecklistSelectedItems,a)}function n(){o.bbChecklistSelectedItems=o.bbChecklistSelectedItems||[],o.itemIsSelected=g,a.$watch(function(){return o.bbChecklistItems},function(){o.filteredItems=o.bbChecklistItems,o.highlightRefresh=(new Date).getTime()}),a.$watch(function(){return o.searchText},function(a,b){a!==b&&j()}),angular.isDefined(o.bbChecklistCategories)&&(o.allCategories="bbChecklistAllCategories",o.selectedOption=o.allCategories,angular.isUndefined(o.bbChecklistAllCategoriesLabel)&&(o.bbChecklistAllCategoriesLabel=d.grid_column_picker_all_categories),a.$watch(function(){return o.selectedOption},function(a,b){a===o.allCategories?o.selectedCategory=null:o.selectedCategory=a,a!==b&&j()})),angular.isDefined(o.bbChecklistSubsetLabel)&&a.$watch(function(){return o.subsetSelected},function(){j()}),a.$watch(function(){return o.onlyShowSelected},function(){j()}),a.$emit("bbPickerReady",{setSelectedItems:function(a){o.bbChecklistSelectedItems=a}})}var o=this;o.selectAll=function(){k(l)},o.clear=function(){k(m)},o.rowClicked=function(a){g(a)?m(a):l(a)},o.isSingleSelect=function(){return"single"===o.bbChecklistSelectStyle},o.getChecklistCls=function(){return{"bb-checklist-single":o.isSingleSelect()}},o.getRowCls=function(a){return{"bb-checklist-row-selected":g(a)}},o.singleSelectRowClick=function(b){o.bbChecklistSelectedItems=[b],a.$emit("bbPickerSelected",{selectedItems:o.bbChecklistSelectedItems})},o.inputClicked=function(a){a.stopPropagation()},o.setColumns=function(a){o.columns=a},o.$onInit=n}var b=["title","description"];a.$inject=["$scope","bbChecklistUtility","bbResources"],angular.module("sky.checklist.controller",["sky.checklist.utility","sky.resources"]).controller("BBChecklistController",a)}(),function(){"use strict";function a(a){return{replace:!0,restrict:"E",transclude:!0,templateUrl:"sky/templates/checklist/checklist.directive.html",bindToController:{bbChecklistItems:"=",bbChecklistSelectedItems:"=?",bbChecklistFilterCallback:"=?",bbChecklistIncludeSearch:"=?",bbChecklistSearchDebounce:"=?",bbChecklistSearchPlaceholder:"@",bbChecklistNoItemsMessage:"@",bbChecklistAutomationField:"=?",bbChecklistCategories:"=?",bbChecklistMode:"@?",bbChecklistSelectStyle:"@?",bbChecklistIsLoading:"=?",bbChecklistSubsetLabel:"=?",bbChecklistSubsetProperty:"@?",bbChecklistAllCategoriesLabel:"<?"},controller:"BBChecklistController",controllerAs:"bbChecklist",scope:{},link:function(b,c,d,e){e.filterLocal=angular.isDefined(d.bbChecklistFilterLocal),e.subsetExclude=angular.isDefined(d.bbChecklistSubsetExclude),e.focusSearch=d.bbChecklistFocusSearch,angular.isDefined(d.bbChecklistFocusSearch)&&a(function(){c.find(".bb-checklist-search-box").focus()},500),e.onlySelectedAvailable=angular.isDefined(d.bbChecklistOnlySelected)}}}a.$inject=["$timeout"],angular.module("sky.checklist.directive",["sky.check","sky.checklist.controller","sky.resources","sky.wait"]).directive("bbChecklist",a)}(),function(){"use strict";function a(){return{require:["bbChecklistColumn","^bbChecklistColumns"],restrict:"E",bindToController:{bbChecklistColumnCaption:"=",bbChecklistColumnField:"=",bbChecklistColumnClass:"=",bbChecklistColumnWidth:"=",bbChecklistColumnAutomationId:"="},controller:function(){},controllerAs:"bbChecklistColumn",scope:{},link:function(a,b,c,d){var e,f=d[1],g=d[0];e={caption:g.bbChecklistColumnCaption,field:g.bbChecklistColumnField,"class":g.bbChecklistColumnClass,width:g.bbChecklistColumnWidth,automationId:g.bbChecklistColumnAutomationId},f.addColumn(e)}}}angular.module("sky.checklist.column.directive",["sky.checklist.columns.directive"]).directive("bbChecklistColumn",a)}(),function(){"use strict";function a(){var a=this;a.columns=[],a.addColumn=function(b){a.columns.push(b)}}angular.module("sky.checklist.columns.controller",[]).controller("BBChecklistColumnsController",a)}(),function(){"use strict";function a(){function a(a,b,c,d){var e=d[1],f=d[0];e.setColumns(f.columns)}return{require:["bbChecklistColumns","^bbChecklist"],restrict:"E",scope:{},bindToController:{},controller:"BBChecklistColumnsController",controllerAs:"bbChecklistColumns",link:a}}angular.module("sky.checklist.columns.directive",["sky.checklist.columns.controller"]).directive("bbChecklistColumns",a)}(),function(){"use strict";function a(a,b,c){function d(d,e,f){var g,h,i;a(e)(d),g=b(f.checklistModel),h=g.assign,i=b(f.checklistValue)(d.$parent),d.$watch("checked",function(a,b){var e;a!==b&&(e=g(d.$parent),a===!0?h(d.$parent,c.add(e,i)):h(d.$parent,c.remove(e,i)))}),d.$parent.$watch(f.checklistModel,function(a){d.checked=c.contains(a,i)},!0)}return{restrict:"A",priority:1e3,terminal:!0,scope:!0,compile:function(a,b){if("INPUT"!==a[0].tagName||!a.attr("type","checkbox"))throw'checklist-model should be applied to `input[type="checkbox"]`.';if(!b.checklistValue)throw"You should provide `checklist-value`.";return a.removeAttr("checklist-model"),a.attr("ng-model","checked"),d}}}a.$inject=["$compile","$parse","bbChecklistUtility"],angular.module("sky.checklist.model.directive",["sky.checklist.utility"]).directive("checklistModel",a)}(),function(){"use strict";angular.module("sky.checklist.utility",[]).factory("bbChecklistUtility",function(){return{contains:function(a,b){var c;if(angular.isArray(a))for(c=0;c<a.length;c+=1)if(angular.equals(a[c],b))return!0;return!1},add:function(a,b,c){var d;for(a=!c&&angular.isArray(a)?a:[],d=0;d<a.length;d+=1)if(angular.equals(a[d],b))return a;return a.push(b),a},remove:function(a,b){var c;if(angular.isArray(a))for(c=0;c<a.length;c+=1)if(angular.equals(a[c],b)){a.splice(c,1);break}return a}}})}(),function(){"use strict";angular.module("sky.chevron.component",["sky.chevron.controller"]).component("bbChevron",{bindings:{bbChevronDirection:"=?"},controller:"BBChevronController",templateUrl:"sky/templates/chevron/chevron.component.html"})}(),function(){"use strict";function a(a){function b(){return c.bbChevronDirection||"up"}var c=this;c.getCls=function(){return"bb-chevron-flip-"+b()},c.getLabel=function(){return a["chevron_"+("up"===b()?"collapse":"expand")]},c.click=function(a){a.stopPropagation(),c.bbChevronDirection="up"===b()?"down":"up"}}a.$inject=["bbResources"],angular.module("sky.chevron.controller",["sky.resources"]).controller("BBChevronController",a)}(),function(){"use strict";function a(a){var b=this;b.getAriaLabel=function(){var c;return b.bbContextMenu&&(c=b.bbContextMenu.getAriaLabel()),c||(c=b.bbContextMenuButtonLabel||a.context_menu_default_label),c}}a.$inject=["bbResources"],angular.module("sky.contextmenu.button.controller",["sky.resources"]).controller("BBContextMenuButtonController",a)}(),function(){"use strict";function a(a,b){var c=angular.element('<button type="button" class="btn bb-btn-secondary bb-context-menu-btn" aria-label="{{bbContextMenuButton.getAriaLabel()}}"><i class="fa fa-ellipsis-h"></i></button>');return angular.isDefined(b.bbContextMenuButtonDropdownToggle)&&c.attr("uib-dropdown-toggle","true"),c}function b(){function b(a,b,c,d){var e=d[1],f=d[0];f.bbContextMenu=e}return{bindToController:{bbContextMenuButtonLabel:"@"},controller:"BBContextMenuButtonController",controllerAs:"bbContextMenuButton",link:b,restrict:"E",require:["bbContextMenuButton","?^bbContextMenu"],scope:{},template:a}}angular.module("sky.contextmenu.button.directive",["sky.contextmenu.button.controller","sky.resources"]).directive("bbContextMenuButton",b)}(),function(){"use strict";function a(){var a=this;a.appendToBody=!!a.appendToBody,a.contextButtonStopPropagation=function(a){a.stopPropagation()},a.getAriaLabel=function(){return a.bbContextMenuLabel}}angular.module("sky.contextmenu.controller",[]).controller("BBContextMenuController",a)}(),function(){"use strict";function a(){return{bindToController:{bbContextMenuLabel:"@",appendToBody:"<?bbContextMenuAppendToBody"},controller:"BBContextMenuController",controllerAs:"bbContextMenu",restrict:"E",scope:{},transclude:!0,templateUrl:"sky/templates/contextmenu/contextmenu.html"}}angular.module("sky.contextmenu.directive",["ui.bootstrap.dropdown","ui.bootstrap.accordion","sky.contextmenu.controller"]).directive("bbContextMenu",a)}(),function(){"use strict";function a(){return{bindToController:{clickItem:"&bbContextMenuAction"},controller:angular.noop,controllerAs:"bbContextMenuItem",restrict:"E",transclude:!0,scope:{},templateUrl:"sky/templates/contextmenu/menuitem.html"}}angular.module("sky.contextmenu.item.directive",[]).directive("bbContextMenuItem",a)}(),function(){"use strict";function a(){return function(a,b){a.preventDefault(),a.stopPropagation(),b.accordionOpen=!b.accordionOpen}}angular.module("sky.contextmenu.toggleaccordion.factory",[]).factory("bbContextMenuToggleAccordion",a)}(),function(){"use strict";function a(a){return{bindToController:{heading:"=?bbSubmenuHeading"},controller:angular.noop,controllerAs:"bbSubmenu",restrict:"E",scope:{},link:function(b,c,d,e){e.accordionOpen=!1,e.staticHeader=!1,angular.isDefined(d.bbSubmenuHeading)&&(e.staticHeader=!0),e.toggleAccordion=function(b){a(b,e)}},transclude:!0,templateUrl:"sky/templates/contextmenu/submenu.html"}}a.$inject=["bbContextMenuToggleAccordion"],angular.module("sky.submenu.directive",["sky.submenu.heading.directive","sky.contextmenu.toggleaccordion.factory","ui.bootstrap.dropdown","ui.bootstrap.accordion"]).directive("bbSubmenu",a)}(),function(){"use strict";function a(){return{bindToController:!0,controller:angular.noop,controllerAs:"bbSubmenuHeading",restrict:"E",require:["bbSubmenuHeading","^bbSubmenu"],scope:!0,link:function(a,b,c,d){var e=d[1],f=d[0];f.submenuCtrl=e,f.toggleAccordion=function(a){e.toggleAccordion(a)}},transclude:!0,templateUrl:"sky/templates/contextmenu/submenuheading.html"}}angular.module("sky.submenu.heading.directive",[]).directive("bbSubmenuHeading",a)}(),function(a){"use strict";function b(a,b,c){var d,f,g;if(a){(angular.isString(a)||a.BB_DATA_POST)&&(g=a,a={},a[e]=g);for(f in a)a.hasOwnProperty(f)&&(d=a[f],g=d,b.push(f),c.push(g))}}function c(a){function b(){a.waitForFirstItem=!1,a.nonblockWaitForAdditionalItems=!1,j&&(j=!1,h.$emit("bbEndWait",{nonblocking:!0})),k&&(k=!1,h.$emit("bbEndWait"))}function c(){j=!0,h.$emit("bbBeginWait",{nonblocking:!0})}function d(b){var d=i.indexOf(b);d!==-1&&(i.splice(d,1),0===i.length&&(g.isLoading=!1,j&&(j=!1,h.$emit("bbEndWait",{nonblocking:!0})))),g.isFirstItemLoaded||(g.isFirstItemLoaded=!0,k&&(k=!1,h.$emit("bbEndWait"))),g.isLoading&&a.nonblockWaitForAdditionalItems&&!j&&c()}function e(b){g.isLoading||g.isFirstItemLoaded&&a.nonblockWaitForAdditionalItems&&c(),i.push(b),g.isLoading=!0}var f,g,h,i=[],j=!1,k=!1;return h=a.scope,a.load&&(f={name:a.name,load:a.load}),g={isFirstItemLoaded:!1,isLoading:!1,loadingItems:i,cancelWaiting:b},a.waitForFirstItem&&(k=!0,h.$emit("bbBeginWait")),f&&(e(f),g.loaded=f.load()["finally"](function(){d(f),h.$parent.$emit("bbData.loadManager.markCompleted",f)}),h.$parent.$emit("bbData.loadManager.registerItem",f)),a.isAggregate&&(h.$on("bbData.loadManager.registerItem",function(a,b){a.stopPropagation(),e(b)}),h.$on("bbData.loadManager.markCompleted",function(a,b){a.stopPropagation(),d(b)})),g}function d(d,i,j,k,l){function m(a,b){var c,d;switch(b=b||0,l.define&&l.define.amd&&l.require&&(d=a.split("?"),a=d.shift(),a=l.require.toUrl(a),a+="?"+d.join("")),b){case f:c=k.dataUrlFilter;break;case g:c=k.resourceUrlFilter;break;case h:c=k.textUrlFilter}return angular.isFunction(c)&&(a=c(a)),a}function n(a,b,c,e){var f,g,k,n,o,p;return c=c||0,a.BB_DATA_POST||b?(f=a.data,o=a.type||"post",p=a.url):(o="get",p=a,k=!0),k&&c===h&&(n=j.get(p))?i(function(a){a({data:n})}):(p=m(p,c),g={method:o,url:p,cache:0!==c,data:f?JSON.stringify(f):null,dataType:0!==c?"text":"json",withCredentials:0===c,timeout:e},f instanceof l.FormData&&angular.extend(g,{transformRequest:angular.identity,headers:{"Content-Type":void 0}}),d(g))}function o(a,b,c,d){var e,f,g;if(b)for(e=0,f=b.length;e<f;e++)g=b[e],a.push(n(g,null,c,d))}function p(){return p.index=p.index||0,p.index++,p.index}function q(a){function b(){delete q[d]}var c,d=p(),e=i.defer();return q[d]=e,c=a(e.promise),c._id=d,c.then(b,b),c}function r(a){return q(function(c){return i(function(d,j){function k(a){function b(b,d){var g,h,i,j,k,l,m;if(d)for(i=0,j=d.length;i<j;i++)k=d[i],h=a[c],g=h.data,k===e?(l=g,m=h):(l=l||{},l[k]=g,m=m||{},m[k]=h),c++;angular.isDefined(l)&&(f[b]=l),angular.isDefined(m)&&(f.httpResults[b]=m)}var c=0,f={httpResults:{}};b("data",n,!0),b("resources",r),b("text",u),d(f)}function l(){j.apply(this,arguments)}var m,n,p,q,r,s,t,u,v,w=[];m=a.data,q=a.resources,t=a.text,m&&(n=[],p=[],b(m,n,p)),q&&(r=[],s=[],b(q,r,s)),t&&(u=[],v=[],b(t,u,v)),o(w,p,f,c),o(w,s,g,c),o(w,v,h,c),i.all(w).then(k)["catch"](l)})})}return{cancel:function(a){a&&a._id&&q[a._id]&&q[a._id].resolve()},load:function(a){return a.loadManager?(a.loadManager.load=function(){return r(a)},c(a.loadManager).loaded):r(a)},loadManager:c,query:function(b,c){return b+"?"+a.param(c)},post:function(a,b){return{url:a,data:b,BB_DATA_POST:!0}},save:function(a){return q(function(b){return n(a,!0,null,b)})}}}var e="__DEFAULT__",f=0,g=1,h=2;d.$inject=["$http","$q","$templateCache","bbDataConfig","$window"],angular.module("sky.data",[]).constant("bbDataConfig",{}).factory("bbData",d)}(jQuery),function(){"use strict";var a={currentCultureDateFormatString:"MM/dd/yyyy",showWeeks:!1,startingDay:0,minDate:"",maxDate:"",bbAltInputFormats:[]};angular.module("sky.datepicker.config",[]).constant("bbDatepickerConfig",a)}(),function(){"use strict";function a(a,b){return{restrict:"A",require:["ngModel","^bbDatepicker"],link:function(c,d,e,f){var g,h,i=f[0],j=e.uibDatepickerPopup;e.bbDatepickerCustomValidate&&"true"===e.bbDatepickerCustomValidate?(i.$parsers=[],i.$validators.date=function(){return!0},g=d.isolateScope(),h=g.dateSelection,g.dateSelection=function(a){h(a),d.trigger("change")}):i.$parsers.unshift(function(c){var e=i.$viewValue,f=null;return f=b.runParsers(e,j),angular.isDate(f)&&d.val(a("date")(f,j)),f?f:c}),f[1].getInputNgModel=function(){return i}}}}a.$inject=["$filter","bbDatepickerParser"],angular.module("sky.datepicker.customvalidate",["sky.datepicker.parser"]).directive("bbDatepickerCustomValidate",a)}(),function(){"use strict";function a(){function a(a){
a.preventDefault(),a.stopPropagation(),b.pickerOpened=!b.pickerOpened}var b=this;b.open=a}function b(b,c,d,e,f,g){function h(a,h,i,j){function k(a){w.pickerDate=null,e(function(){s.val(a)})}function l(){var a;angular.isDate(w.date)?w.pickerDate=angular.copy(w.date):w.hasCustomValidation?k(w.date):(r=d.runModelParsers(w.date,w.format),angular.isDate(r)?(w.date=angular.copy(r),w.pickerDate=angular.copy(r)):(k(w.date),a=w.getInputNgModel(),a&&!a.$validators.date(w.date)&&(a.invalidFormatMessage=b.date_field_invalid_date_message,a.$setValidity("dateFormat",!1))))}function m(){var a=w.getInputNgModel();return a&&a.$error&&(a.$error.minDate||a.$error.maxDate)}function n(a){function c(){var a=w.getInputNgModel();a?(h[a.invalidFormatMessage?"reject":"resolve"](),a.$setValidity("dateFormat",!a.invalidFormatMessage||""===a.invalidFormatMessage)):h.resolve()}function d(a){var b=w.getInputNgModel();b&&(b.invalidFormatMessage=a)}function e(a){a=a||{},d(a.formattingErrorMessage),c(),angular.isDefined(a.formattedValue)&&a.formattedValue!==w.date&&(t=!0,u=!0,w.date=angular.copy(a.formattedValue),s&&s.val(w.date),angular.isDate(a.formattedValue)&&(w.pickerDate=angular.copy(a.formattedValue)))}var g,h,i;if(h=f.defer(),t||angular.isDate(a)||""===a||m()||!w.required&&null===a)d(null),c();else if(w.hasCustomValidation&&angular.isString(a)){if(g=w.bbDatepickerCustomValidation.formatValue(a),!g.then)return e(g),h.promise;g.then(e)}else i=w.getInputNgModel(),i&&i.$error&&i.$error.date&&d(b.date_field_invalid_date_message),c();return t=!1,h.promise}function o(a){(angular.isDefined(a)||angular.isDefined(a))&&(w.appendToBody="true"===a)}function p(){v.$options=v.$options.createChild({allowInvalid:!0}),w.pickerDate="",w.pickerOpened=!1,w.pickerOptions={showWeeks:c.showWeeks,startingDay:c.startingDay,maxDate:w.bbMaxDate,minDate:w.bbMinDate},w.hasCustomValidation=!1,w.inputName=i.bbDatepickerName,angular.isUndefined(w.format)&&(w.format=c.currentCultureDateFormatString),w.maxDate&&(g.warn("bbDatepicker max-date attribute is deprecated, use bb-datepicker-max instead"),w.bbMaxDate=w.maxDate),w.minDate&&(g.warn("bbDatepicker min-date attribute is deprecated, use bb-datepicker-min instead"),w.bbMinDate=w.minDate),w.placeholderText&&(g.warn("bbDatepicker placeholder attribute is deprecated, use bb-datepicker-placeholder instead"),w.bbPlaceholder=w.placeholderText),(null===w.bbPlaceholder||angular.isUndefined(w.bbPlaceholder))&&(w.bbPlaceholder=w.format.toLowerCase()),w.appendToBody=!1,angular.isDefined(i.datepickerAppendToBody)?(g.warn("bbDatepicker datepicker-append-to-body attribute is deprecated, use bb-datepicker-append-to-body instead"),o(i.datepickerAppendToBody)):o(i.bbDatepickerAppendToBody),w.showButtonBar=!1,angular.isDefined(i.showButtonBar)?(g.warn("bbDatepicker show-button-bar attribute is deprecated, use bb-datepicker-show-button-bar instead"),w.showButtonBar=i.showButtonBar):angular.isDefined(i.bbDatepickerShowButtonBar)&&(w.showButtonBar=i.bbDatepickerShowButtonBar),w.closeOnSelection=!0,angular.isDefined(i.closeOnDateSelection)?(g.warn("bbDatepicker close-on-date-selection attribute is deprecated, use bb-datepicker-close-on-date-selection instead"),w.closeOnSelection=i.closeOnDateSelection):angular.isDefined(i.bbDatepickerCloseOnDateSelection)&&(w.closeOnSelection=i.bbDatepickerCloseOnDateSelection),angular.isDefined(w.customValidation)&&(g.warn("bbDatepicker bb-custom-validation attribute is deprecated, use bb-datepicker-custom-validation instead"),w.bbDatepickerCustomValidation=w.customValidation),w.altInputFormats=angular.copy(c.bbAltInputFormats),angular.isArray(w.bbAltInputFormats)?(g.warn("bbDatepicker bb-alt-input-formats attribute is deprecated, use bb-datepicker-alt-input-formats instead"),angular.extend(w.altInputFormats,w.bbAltInputFormats)):angular.isArray(w.bbDatepickerAltInputFormats)&&angular.extend(w.altInputFormats,w.bbDatepickerAltInputFormats),w.altInputFormats.length<1&&(w.altInputFormats=d.getAltInputFormats(w.format)),!w.bbMaxDate&&c.maxDate&&(w.bbMaxDate=angular.copy(c.maxDate),w.pickerOptions.maxDate=w.bbMaxDate,w.maxDate=w.bbMaxDate),!w.bbMinDate&&c.minDate&&(w.bbMinDate=angular.copy(c.minDate),w.pickerOptions.minDate=w.bbMinDate,w.minDate=w.bbMinDate),w.resources=b,angular.isDefined(w.bbDateOptions)&&angular.extend(w.pickerOptions,w.bbDateOptions),angular.isDefined(w.bbDatepickerCustomValidation)&&angular.isFunction(w.bbDatepickerCustomValidation.formatValue)&&(w.hasCustomValidation=!0),w.required=angular.isDefined(i.required)}function q(){var a=w.getInputNgModel();a&&a.$validate()}var r,s,t=!1,u=!1,v=j[0],w=j[1];w.loaded=!1,p(),e(function(){function b(a){var b;return w.hasCustomValidation||(b=d.parseMoment(a,w.format)),b}function c(){var a,c=w.getInputNgModel();!angular.isUndefined(w.pickerDate)&&angular.isDate(w.pickerDate)||!angular.isDefined(s.val())||""===s.val()?w.required&&""===s.val()?(""!==w.date&&(u=!0,w.date=""),c.invalidFormatMessage=null,c.$setValidity("dateFormat",!0)):w.date!==w.pickerDate&&(u=!0,w.date=angular.copy(w.pickerDate)):(a=b(w.pickerDate),angular.isDate(a)?w.date=a:w.date!==s.val()&&(u=!0,w.date=s.val()))}function f(a){13===a.keyCode&&c()}s=h.find("input"),l(),v.$asyncValidators.dateFormat=n,v.$validate(),a.$watch(function(){return w.date},function(a,b){a===b||u?u&&(u=!1):l()}),w.enterPress=f,s.on("change blur",function(){e(function(){c()})}),a.$watch(function(){return w.pickerDate},function(){w.date!==w.pickerDate&&angular.isDate(w.pickerDate)&&(u=!0,w.date=angular.copy(w.pickerDate))}),a.$watch(function(){return v.$error&&v.$error.required},function(a){var b;w.required&&(b=w.getInputNgModel(),b.$setValidity("required",!a))})}),a.$watch(function(){return angular.isDefined(i.maxDate)&&(w.bbMaxDate=w.maxDate),w.bbMaxDate},function(a){q(),w.pickerOptions.maxDate=a}),a.$watch(function(){return angular.isDefined(i.minDate)&&(w.bbMinDate=w.minDate),w.bbMinDate},function(a){q(),w.pickerOptions.minDate=a}),w.loaded=!0}return{replace:!0,restrict:"E",controller:a,controllerAs:"bbDatepicker",bindToController:{date:"=ngModel",bbDateOptions:"=?",bbDatepickerCustomValidation:"=?bbDatepickerCustomValidation",format:"=?bbDateFormat",bbMaxDate:"=?bbDatepickerMax",bbMinDate:"=?bbDatepickerMin",bbPlaceholder:"=?bbDatepickerPlaceholder",bbDatepickerAltInputFormats:"=?",bbDatepickerSkipButtonWhileTabbing:"<?",bbAltInputFormats:"=?",maxDate:"=?maxDate",minDate:"=?minDate",placeholderText:"=?placeholder",customValidation:"=?bbCustomValidation"},require:["ngModel","bbDatepicker"],scope:{},templateUrl:"sky/templates/datepicker/datepicker.directive.html",link:h}}b.$inject=["bbResources","bbDatepickerConfig","bbDatepickerParser","$timeout","$q","$log"],angular.module("sky.datepicker.directive",["sky.resources","sky.moment","ui.bootstrap.datepicker","sky.datepicker.customvalidate","sky.datepicker.maxdate","sky.datepicker.mindate","sky.datepicker.parser","sky.datepicker.config"]).directive("bbDatepicker",b)}(),function(){"use strict";function a(){return{restrict:"A",require:["ngModel","^bbDatepicker"],link:function(a,b,c,d){var e=d[0],f=d[1];e.$validators.maxDate=function(a){return!f.bbMaxDate||!a||!angular.isDate(a)||!angular.isDate(f.bbMaxDate)||a<=f.bbMaxDate}}}}angular.module("sky.datepicker.maxdate",[]).directive("bbDatepickerMaxDate",a)}(),function(){"use strict";function a(){return{restrict:"A",require:["ngModel","^bbDatepicker"],link:function(a,b,c,d){var e=d[0],f=d[1];e.$validators.minDate=function(a){return!f.bbMinDate||!a||!angular.isDate(a)||!angular.isDate(f.bbMinDate)||a>=f.bbMinDate}}}}angular.module("sky.datepicker.mindate",[]).directive("bbDatepickerMinDate",a)}(),function(){"use strict";function a(a){function b(b){var c,d,e=null;return b.indexOf("T")!==-1&&(c=b.split("T")[1],d=c.indexOf("Z")===-1&&c.indexOf("+")===-1&&c.indexOf("-")===-1?a(b,"YYYY-MM-DDTHH:mm:ss"):a(b,"YYYY-MM-DDThh:mm:ss.sssZ"),d.isValid()&&(e=d.toDate())),e}function c(a){return{yearBegin:a.indexOf("y"),monthBegin:a.indexOf("M"),dayBegin:a.indexOf("d")}}function d(a,b){var d,e,f,g,h,i,j,k=null;if(g=c(b),d=g.yearBegin,e=g.monthBegin,f=g.dayBegin,angular.isString(a)&&8===a.length&&!isNaN(a)){if(f<d&&e<d)h=4,e<f?(j=2,i=0):(j=0,i=2);else{if(!(d<e&&e<f))return null;h=0,i=4,j=6}k=new Date(a.substr(h,4),a.substr(i,2)-1,a.substr(j,2))}return k}function e(a){return a.match(/[.\/\-\s].*?/)}function f(a){var b,d,f,g,h=[],i=e(a),j=c(a);if(b=j.yearBegin,d=j.monthBegin,f=j.dayBegin,i)return g=i[0],g&&(f<b&&d<b?d<f?h.push("M!"+g+"d!"+g+"yyyy"):h.push("d!"+g+"M!"+g+"yyyy"):b<d&&d<f&&h.push("yyyy"+g+"M!"+g+"d!")),h}function g(a){var b=e(a),c=a.split(b),d=a.indexOf(b,a.length-1)!==-1,f=0===a.indexOf(b),g=c.length-1===2,h=c.some(function(a){return 0===Number(a)});return b&&!d&&!f&&g&&!h}function h(a){var b=c(a);return!(b.monthBegin>b.yearBegin&&b.yearBegin>b.dayBegin||b.monthBegin<b.yearBegin&&b.yearBegin<b.dayBegin)}function i(a,b){return!!(angular.isString(a)&&g(a)&&a.length<11&&a.length>5&&h(b))}function j(a){return a.yearBegin>a.monthBegin&&a.yearBegin>a.dayBegin}function k(a){return a.yearBegin<a.monthBegin&&a.yearBegin<a.dayBegin}function l(a,b){var d,f,g=c(b),h=e(b);if(h){if(d=a.split(h),f=b.split(h),j(g))return 4===f[2].length&&2===d[2].length;if(k(g))return 4===f[0].length&&4!==d[0].length}}function m(a){var b,d,f,g=c(a),h=e(a);if(h&&(b=a.split(h),d=h[0])){if(f=d+b[1]+d,j(g))return b[0]+f+"yy";if(k(g))return"yy"+f+b[2]}}function n(b,c){var d,e;return d=a(b,c.toUpperCase()),d.isValid()&&(e=d.toDate()),e}function o(a,b){var c,d=null;return i(a,b)&&(l(a,b)&&(c=m(b)),c||(c=b),d=n(a,c)),d}return{parseUTCString:b,parseNoSeparatorDateString:d,getAltInputFormats:f,parseMoment:o,runModelParsers:function(a,c){var e=null;return!a||angular.isDate(a)||""===a?a:(e=b(a),angular.isDate(e)?e:(e=d(a,c),angular.isDate(e)?e:e=o(a,c)))},runParsers:function(a,c){var e=null;return!a||angular.isDate(a)||""===a?a:(e=b(a),angular.isDate(e)?e:e=d(a,c))}}}a.$inject=["bbMoment"],angular.module("sky.datepicker.parser",["sky.moment"]).factory("bbDatepickerParser",a)}(),function(){"use strict";function a(a){function b(a,b){var c;return c=b(a&&a.dateRangeType?a.dateRangeType:a)}function c(a,c){var d;return angular.isFunction(c)&&(d=b(a,c),d&&d.caption)?d.caption:(a=angular.isNumber(a)?{dateRangeType:a}:a||{},angular.isDefined(a.dateRangeType)||(a.dateRangeType=f.AT_ANY_TIME),angular.isDefined(j[a.dateRangeType])?j[a.dateRangeType].caption:"")}function d(a,c){var d;return angular.isFunction(c)&&(d=b(a,c),d&&d.description)?d.description:(a=angular.isNumber(a)?{dateRangeType:a}:a||{},angular.isDefined(a.dateRangeType)||(a.dateRangeType=f.AT_ANY_TIME),angular.isDefined(j[a.dateRangeType])?j[a.dateRangeType].description:"")}function e(a){var b=[f.AT_ANY_TIME];return a=a||{},a.includeDefault&&(b.push(f.YESTERDAY),b.push(f.TODAY),b.push(f.TOMORROW),b.push(f.LAST_WEEK),b.push(f.THIS_WEEK),b.push(f.NEXT_WEEK),b.push(f.LAST_MONTH),b.push(f.THIS_MONTH),b.push(f.NEXT_MONTH),b.push(f.LAST_QUARTER),b.push(f.THIS_QUARTER),b.push(f.NEXT_QUARTER),b.push(f.LAST_CALENDAR_YEAR),b.push(f.THIS_CALENDAR_YEAR),b.push(f.NEXT_CALENDAR_YEAR),b.push(f.LAST_FISCAL_YEAR),b.push(f.THIS_FISCAL_YEAR),b.push(f.NEXT_FISCAL_YEAR)),a.includePast&&!a.includeDefault&&(b.push(f.YESTERDAY),b.push(f.TODAY),b.push(f.LAST_WEEK),b.push(f.THIS_WEEK),b.push(f.LAST_MONTH),b.push(f.THIS_MONTH),b.push(f.LAST_QUARTER),b.push(f.THIS_QUARTER),b.push(f.LAST_CALENDAR_YEAR),b.push(f.THIS_CALENDAR_YEAR),b.push(f.LAST_FISCAL_YEAR),b.push(f.THIS_FISCAL_YEAR)),a.includeSpecific&&b.push(f.SPECIFIC_RANGE),b}var f,g,h,i,j;return f={AT_ANY_TIME:0,NEXT_WEEK:1,THIS_MONTH:2,NEXT_MONTH:3,THIS_QUARTER:4,NEXT_QUARTER:5,THIS_FISCAL_YEAR:6,NEXT_FISCAL_YEAR:7,THIS_CALENDAR_YEAR:8,NEXT_CALENDAR_YEAR:9,LAST_WEEK:10,LAST_MONTH:11,LAST_QUARTER:12,LAST_FISCAL_YEAR:13,LAST_CALENDAR_YEAR:14,TODAY:15,YESTERDAY:16,TOMORROW:17,THIS_WEEK:18,SPECIFIC_RANGE:19},g=[f.AT_ANY_TIME,f.YESTERDAY,f.TODAY,f.TOMORROW,f.LAST_WEEK,f.THIS_WEEK,f.NEXT_WEEK,f.LAST_MONTH,f.THIS_MONTH,f.NEXT_MONTH,f.LAST_QUARTER,f.THIS_QUARTER,f.NEXT_QUARTER,f.LAST_CALENDAR_YEAR,f.THIS_CALENDAR_YEAR,f.NEXT_CALENDAR_YEAR,f.LAST_FISCAL_YEAR,f.THIS_FISCAL_YEAR,f.NEXT_FISCAL_YEAR],h=g.concat([f.SPECIFIC_RANGE]),i=[f.AT_ANY_TIME,f.YESTERDAY,f.TODAY,f.LAST_WEEK,f.THIS_WEEK,f.LAST_MONTH,f.THIS_MONTH,f.LAST_QUARTER,f.THIS_QUARTER,f.LAST_CALENDAR_YEAR,f.THIS_CALENDAR_YEAR,f.LAST_FISCAL_YEAR,f.THIS_FISCAL_YEAR],j={},j[f.AT_ANY_TIME]={caption:a.date_range_picker_at_any_time,description:a.date_range_picker_filter_description_at_any_time},j[f.YESTERDAY]={caption:a.date_range_picker_yesterday,description:a.date_range_picker_filter_description_yesterday},j[f.TODAY]={caption:a.date_range_picker_today,description:a.date_range_picker_filter_description_today},j[f.TOMORROW]={caption:a.date_range_picker_tomorrow,description:a.date_range_picker_filter_description_tomorrow},j[f.LAST_WEEK]={caption:a.date_range_picker_last_week,description:a.date_range_picker_filter_description_last_week},j[f.THIS_WEEK]={caption:a.date_range_picker_this_week,description:a.date_range_picker_filter_description_this_week},j[f.NEXT_WEEK]={caption:a.date_range_picker_next_week,description:a.date_range_picker_filter_description_next_week},j[f.LAST_QUARTER]={caption:a.date_range_picker_last_quarter,description:a.date_range_picker_filter_description_last_quarter},j[f.THIS_QUARTER]={caption:a.date_range_picker_this_quarter,description:a.date_range_picker_filter_description_this_quarter},j[f.NEXT_QUARTER]={caption:a.date_range_picker_next_quarter,description:a.date_range_picker_filter_description_next_quarter},j[f.LAST_CALENDAR_YEAR]={caption:a.date_range_picker_last_calendar_year,description:a.date_range_picker_filter_description_last_calendar_year},j[f.THIS_CALENDAR_YEAR]={caption:a.date_range_picker_this_calendar_year,description:a.date_range_picker_filter_description_this_calendar_year},j[f.NEXT_CALENDAR_YEAR]={caption:a.date_range_picker_next_calendar_year,description:a.date_range_picker_filter_description_next_calendar_year},j[f.LAST_FISCAL_YEAR]={caption:a.date_range_picker_last_fiscal_year,description:a.date_range_picker_filter_description_last_fiscal_year},j[f.THIS_FISCAL_YEAR]={caption:a.date_range_picker_this_fiscal_year,description:a.date_range_picker_filter_description_this_fiscal_year},j[f.NEXT_FISCAL_YEAR]={caption:a.date_range_picker_next_fiscal_year,description:a.date_range_picker_filter_description_next_fiscal_year},j[f.THIS_MONTH]={caption:a.date_range_picker_this_month,description:a.date_range_picker_filter_description_this_month},j[f.NEXT_MONTH]={caption:a.date_range_picker_next_month,description:a.date_range_picker_filter_description_next_month},j[f.LAST_MONTH]={caption:a.date_range_picker_last_month,description:a.date_range_picker_filter_description_last_month},j[f.SPECIFIC_RANGE]={caption:a.date_range_picker_specific_range,description:a.date_range_picker_filter_description_specific_range},{defaultDateRangeOptions:g,pastDateRangeOptions:i,specificDateRangeOptions:h,dateRangeTypes:f,getDateRangeOptions:e,getDateRangeTypeCaption:c,getDateRangeFilterDescription:d}}function b(a,b){return{replace:!0,restrict:"E",templateUrl:"sky/templates/daterangepicker/daterangepicker.html",scope:{},controllerAs:"bbDateRangePickerCtrl",bindToController:{bbDateRangePickerValue:"=",bbDateRangePickerAutomationId:"=",bbDateRangePickerOptions:"=",fromDate:"=?bbDateRangePickerFromDate",toDate:"=?bbDateRangePickerToDate",pickerLabel:"=?bbDateRangePickerLabel",isValid:"=?bbDateRangePickerValid"},controller:["$scope",function(c){var d=this;d.resources=b,d.defaultDateRangeOptions=a.getDateRangeOptions({includeDefault:!0}),d.getDateRangeTypeCaption=function(b){var c;return d.bbDateRangePickerOptions&&angular.isFunction(d.bbDateRangePickerOptions.getDateRangeTypeInfo)&&(c=d.bbDateRangePickerOptions.getDateRangeTypeInfo),a.getDateRangeTypeCaption(b,c)},c.$watch(function(){return d.dateRangeForm.$valid},function(a){d.isValid=a}),c.$watch(function(){return d.fromDate},function(a){d.minDate=angular.copy(a)}),c.$watch(function(){return d.toDate},function(a){d.maxDate=angular.copy(a)}),c.$watch(function(){return d.bbDateRangePickerValue},function(b){return b?(d.specificRangeIsVisible=d.bbDateRangePickerValue.dateRangeType===a.dateRangeTypes.SPECIFIC_RANGE,void(b.dateRangeType=b.dateRangeType||a.dateRangeTypes.AT_ANY_TIME)):void(d.bbDateRangePickerValue={dateRangeType:a.dateRangeTypes.AT_ANY_TIME})},!0)}],link:function(a,c,d,e){e.noLabels=d.bbDateRangePickerNoLabels,e.noLabels?(e.toPlaceholder=b.date_range_picker_to_date,e.fromPlaceholder=b.date_range_picker_from_date):(e.toPlaceholder="",e.fromPlaceholder="")}}}a.$inject=["bbResources"],b.$inject=["bbDateRangePicker","bbResources"],angular.module("sky.daterangepicker",["sky.resources","sky.datepicker"]).factory("bbDateRangePicker",a).directive("bbDateRangePicker",b)}(),function(){"use strict";function a(a){function b(){c.bbDefinitionListDefaultValue||(c.bbDefinitionListDefaultValue=a.definition_list_none_found)}var c=this;c.$onInit=b}a.$inject=["bbResources"],angular.module("sky.definitionlist.component",["sky.resources"]).component("bbDefinitionList",{templateUrl:"sky/templates/definitionlist/definitionlist.component.html",controller:a,bindings:{bbDefinitionListLabelWidth:"@?",bbDefinitionListDefaultValue:"<?"},transclude:{heading:"?bbDefinitionListHeading",content:"bbDefinitionListContent"}})}(),function(){"use strict";function a(a){function b(){var b=a.find(".bb-definition-list-value");return!!(b&&b.text()&&b.text().trim())}var c=this;c.hasValue=b}a.$inject=["$element"],angular.module("sky.definitionlistcontent.component",[]).component("bbDefinitionListContent",{require:{definitionCtrl:"^bbDefinitionList"},templateUrl:"sky/templates/definitionlist/definitionlistcontent.component.html",transclude:{value:"?bbDefinitionListValue",label:"bbDefinitionListLabel"},controller:a})}(),function(){"use strict";function a(a){var b=this;a.$on("$destroy",function(){angular.isFunction(b.onDestroy)&&(b.onDestroy(),b=null)})}function b(){fu