You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@unomi.apache.org by sh...@apache.org on 2015/11/20 18:42:42 UTC

svn commit: r1715397 [7/25] - in /incubator/unomi/website: ./ rest-api-doc/ rest-api-doc/css/ rest-api-doc/font/ rest-api-doc/font/Droid_Sans/ rest-api-doc/font/Droid_Sans_Mono/ rest-api-doc/font/Open_Sans/ rest-api-doc/img/ rest-api-doc/input/ rest-ap...

Added: incubator/unomi/website/rest-api-doc/js/output.js
URL: http://svn.apache.org/viewvc/incubator/unomi/website/rest-api-doc/js/output.js?rev=1715397&view=auto
==============================================================================
--- incubator/unomi/website/rest-api-doc/js/output.js (added)
+++ incubator/unomi/website/rest-api-doc/js/output.js Fri Nov 20 17:42:33 2015
@@ -0,0 +1,2 @@
+"use strict";function checkBrowser(){var browser=getBrowserNameAndVersion();return"msie"===browser[0].toLowerCase()&&browser[1]<10?"Internet Explorer versions below 10 aren't supported.":"firefox"===browser[0].toLowerCase()&&browser[1]<10?"Firefox versions below 10 aren't supported.":"chrome"===browser[0].toLowerCase()&&browser[1]<14?"Chrome versions below 14 aren't supported.":"safari"==browser[0].toLowerCase()&&browser[1]<4?"Safari versions below 4 aren't supported.":"opera"===browser[0].toLowerCase()&&browser[1]<11?"Opera versions below 11 aren't supported.":"Supported"}function getBrowserNameAndVersion(){var tem,ua=navigator.userAgent,M=ua.match(/(opera|chrome|safari|firefox|msie|trident(?=\/))\/?\s*(\d+)/i)||[];return/trident/i.test(M[1])?(tem=/\brv[ :]+(\d+)/g.exec(ua)||[],["MSIE ",tem[1]||""]):"Chrome"===M[1]&&(tem=ua.match(/\b(OPR|Edge)\/(\d+)/),null!=tem)?[tem[1].replace("OPR","Opera"),tem[2]]:(M=M[2]?[M[1],M[2]]:[navigator.appName,navigator.appVersion],null!=(tem=ua.match(
 /version\/(\d+)/i))&&(M=[M[0],tem[1]]),M)}function DocRoot($scope,$location,$localStorage,$filter,$http,$anchorScroll,$timeout){function setView(hash){"warnings"===hash?$scope.view="warnings":(/^-?\d+$/.test(hash)&&(null===$scope.getInterfaceByHash(hash)||void 0===$scope.getInterfaceByHash(hash)?window.location.hash="":$scope.openResource($scope.getInterfaceByHash(hash).url,hash)),$scope.view="interfaces")}function ensureLinksHaveTargetInApiIntro(){$("#intro a").attr("target",function(i,current){return current||"_self"})}function appendUrl(rootParts,url,method,hash,rootResource){var currentResource=null,parentResource=rootResource;_.each(rootParts,function(rootPart){""!=rootPart?(currentResource=_.find(parentResource.resources,function(resource){return resource.name===rootPart}),currentResource||(currentResource={name:rootPart,resources:[],leafResources:[]},parentResource.resources.push(currentResource)),parentResource=currentResource):currentResource=parentResource});var existingLe
 af=_.find(currentResource.leafResources,function(leaf){return leaf.url===url});existingLeaf?existingLeaf.methods.push({method:method,hash:hash}):currentResource.leafResources.push({name:"",url:url,methods:[{method:method,hash:hash}]})}function splitPaths(interfaces){var resources=[{name:"",resources:[],leafResources:[]}];return _.each(interfaces,function(element,index,list){"/"!==element.url.charAt(0)&&(element.url="/"+element.url),"/"!==element.url.charAt(element.url.length-1)&&(element.url+="/");var baseUrl=element.url;"/"===baseUrl&&(baseUrl=""),appendUrl(baseUrl.split("/"),element.url,element.http,element.hash,resources[0])}),_.each(resources,function(subResource,index,list){compactEmptyMiddleResources(subResource.resources,subResource.leafResources)}),0===resources[0].leafResources.length&&(resources=resources[0].resources),resources.sort(function(r1,r2){return r1.name.localeCompare(r2.name)}),resources}function compactEmptyMiddleResources(resources,leafResources){var subResour
 cesToRemove=[];_.each(resources,function(subResource,index,list){var foundLeafResult=findSolitaryLeaf(subResource,"");foundLeafResult?(foundLeafResult.leaf.name=foundLeafResult.aggregatedName,leafResources.push(foundLeafResult.leaf),subResourcesToRemove.push(index)):compactEmptyMiddleResources(subResource.resources,subResource.leafResources)});for(var i=subResourcesToRemove.length-1;i>=0;i--)resources.splice(subResourcesToRemove[i],1)}function findSolitaryLeaf(subResource,name){if(subResource.resources.length+subResource.leafResources.length!==1)return!1;var aggregatedName=concatenateWithSlash(name,subResource.name);return 1===subResource.leafResources.length?{leaf:subResource.leafResources[0],aggregatedName:concatenateWithSlash(aggregatedName,subResource.leafResources[0].name)}:findSolitaryLeaf(subResource.resources[0],aggregatedName)}function concatenateWithSlash(firstPart,secondPart){var result="";return firstPart&&(result+=firstPart),firstPart&&secondPart&&(result+="/"),secondPa
 rt&&(result+=secondPart),result}function isResourcePartVisible(resource){return $scope.singlePage?!1:resource===$scope.currentResource?!0:void 0!==_.find(resource.resources,function(sub){return isResourcePartVisible(sub)})}function findParent(url){return findParentRecursive($scope.resourceTree,url)}function findParentRecursive(resources,url){for(var i=0;i<resources.length;++i){var resource=resources[i];if(0!==resource.leafResources.length&&void 0!==_.find(resource.leafResources,function(leaf){return leaf.url===url}))return resource;if(0!==resource.resources.length){var result=findParentRecursive(resource.resources,url);if(null!==result)return result}}return null}function setGlobalCollapsedState(collapsed){$localStorage.globalCollapsedState=collapsed,_.each($scope.interfaces,function(currentInterface){currentInterface.collapsed=collapsed})}function collapseResources(resources,open,stopLevel){void 0===stopLevel||null===stopLevel?_.each(resources,function(resource){resource.hierarchyOp
 en=open,collapseResources(resource.resources,open)}):stopLevel<com.qmino.miredot.restApiSource.initialCollapseLevel?_.each(resources,function(resource){resource.hierarchyOpen=open,collapseResources(resource.resources,open,stopLevel+1)}):void 0!==stopLevel&&_.each(resources,function(resource){isResourcePartVisible(resource)&&(resource.hierarchyOpen=!0,collapseResources(resource.resources,open,stopLevel+1))})}function countResources(resources,leafResources){var count=0;return leafResources&&(count+=leafResources.length),resources&&(count+=resources.length,_.each(resources,function(resource){count+=countResources(resource.resources,resource.leafResources)})),count}$scope.restBase="http://www.miredot.com/miredot/rest/",$scope.visitWebsiteForProVersion='Visit our <a href="http://www.miredot.com/price/?licenserequest=pro" target="_blank">website</a> to get the full version (free for open source).',$scope.projectTitle=com.qmino.miredot.restApiSource.projectTitle,$scope.miredotVersion=com.q
 mino.miredot.restApiSource.miredotVersion,$scope.validLicense=com.qmino.miredot.restApiSource.validLicense,$scope.licenseType=com.qmino.miredot.restApiSource.licenseType,$scope.licenseErrorMessage=com.qmino.miredot.restApiSource.licenseErrorMessage,$scope.licenseHash=com.qmino.miredot.restApiSource.licenseHash,$scope.allowUsageTracking=com.qmino.miredot.restApiSource.allowUsageTracking,$scope.dateOfGeneration=com.qmino.miredot.restApiSource.dateOfGeneration,$scope.issuesTabHidden=com.qmino.miredot.restApiSource.issuesTabHidden,$scope.singlePage=com.qmino.miredot.restApiSource.singlePage,$scope.hideLogoOnTop=com.qmino.miredot.restApiSource.hideLogoOnTop,com.qmino.miredot.restApiSource.onlineLicense&&($scope.licenseErrorMessage+=' <a href="'+com.qmino.miredot.restApiSource.loginUrl+'">Login</a> to upgrade your subscription.'),$scope.$storage=$localStorage.$default({globalCollapsedState:!1}),$scope.baseUrl={value:function(){var baseUrl="http://example.com";return $scope.validLicense&&"
 PRO"==$scope.licenseType&&(baseUrl=$location.search().baseUrl||com.qmino.miredot.restApiSource.baseUrl||baseUrl),baseUrl}()},$scope.applicationPath=com.qmino.miredot.restApiSource.applicationPath,$scope.editingBaseUrl=!1,$scope.projectWarnings=com.qmino.miredot.projectWarnings,$scope.interfaces=com.qmino.miredot.restApiSource.interfaces,$scope.tos=com.qmino.miredot.restApiSource.tos,$scope.processErrors=com.qmino.miredot.processErrors,$scope.jsonDocConfig={enabled:com.qmino.miredot.restApiSource.jsonDocEnabled,hidden:com.qmino.miredot.restApiSource.jsonDocHidden},$scope.searchByExample="",$scope.searchQuery={url:"",http:""},$scope.location=$location,$scope.navigationView="hierarchical",$scope.statusCodes={},$scope.statusCodes[100]="Continue",$scope.statusCodes[101]="Switching Protocols",$scope.statusCodes[200]="OK",$scope.statusCodes[201]="Created",$scope.statusCodes[202]="Accepted",$scope.statusCodes[203]="Non-Authoritative Information",$scope.statusCodes[204]="No Content",$scope.s
 tatusCodes[205]="Reset Content",$scope.statusCodes[206]="Partial Content",$scope.statusCodes[300]="Multiple Choices",$scope.statusCodes[301]="Moved Permanently",$scope.statusCodes[302]="Found",$scope.statusCodes[303]="See Other",$scope.statusCodes[304]="Not Modified",$scope.statusCodes[305]="Use Proxy",$scope.statusCodes[306]="Switch Proxy",$scope.statusCodes[307]="Temporary Redirect",$scope.statusCodes[308]="Permanent Redirect",$scope.statusCodes[400]="Bad Request",$scope.statusCodes[401]="Unauthorized",$scope.statusCodes[402]="Payment Required",$scope.statusCodes[403]="Forbidden",$scope.statusCodes[404]="Not Found",$scope.statusCodes[405]="Method Not Allowed",$scope.statusCodes[406]="Not Acceptable",$scope.statusCodes[407]="Proxy Authentication Required",$scope.statusCodes[408]="Request Timeout",$scope.statusCodes[409]="Conflict",$scope.statusCodes[410]="Gone",$scope.statusCodes[411]="Length Required",$scope.statusCodes[412]="Precondition Failed",$scope.statusCodes[413]="Request E
 ntity Too Large",$scope.statusCodes[414]="Request-URI Too Long",$scope.statusCodes[415]="Unsupported Media Type",$scope.statusCodes[416]="Requested Range Not Satisfiable",$scope.statusCodes[417]="Expectation Failed",$scope.statusCodes[418]="I'm a teapot",$scope.statusCodes[422]="Unprocessable Entity",$scope.statusCodes[423]="Locked",$scope.statusCodes[424]="Failed Dependency",$scope.statusCodes[426]="Upgrade Required",$scope.statusCodes[428]="Precondition Required",$scope.statusCodes[429]="Too Many Requests",$scope.statusCodes[431]="Request Header Fields Too Large",$scope.statusCodes[500]="Internal Server Error",$scope.statusCodes[501]="Not Implemented",$scope.statusCodes[502]="Bad Gateway",$scope.statusCodes[503]="Service Unavailable",$scope.statusCodes[504]="Gateway Timeout",$scope.statusCodes[505]="HTTP Version Not Supported",ensureLinksHaveTargetInApiIntro(),setGlobalCollapsedState($localStorage.globalCollapsedState),$scope.hierarchyOpen=!0,$scope.$watch("location.hash()",functi
 on(newValue,oldValue){oldValue!=newValue&&setView(newValue)}),$http.jsonp($scope.restBase+"version?hash="+$scope.licenseHash+"&version="+$scope.miredotVersion+"&licensetype="+($scope.licenseType||"FREE")+"&callback=JSON_CALLBACK&noi="+$scope.interfaces.length).success(function(data){data.upToDate?$scope.versionCheckResult="":$scope.versionCheckResult=" | New version available: "+data.version}),$scope.formatTypeValue=function(typeValue){switch(typeValue.type){case"collection":return"[ "+$scope.formatTypeValue(typeValue.typeValue)+" ]";case"enum":return"enum";default:return typeValue.typeValue}},$scope.formatDefaultValue=function(typeValue,defaultValue){switch(typeValue.type){case"enum":var enumValues=enumArrayToString(typeValue);return enumValues=enumValues.replace(defaultValue,'<span class="default" title="Default value">'+defaultValue+"</span>"),enumValues+enumComment(typeValue);default:return void 0!=defaultValue?'<span class="default" title="Default value">'+defaultValue+"</span>
 ":""}},$scope.toggleJsonDoc=function(anchor){$scope.jsonDocConfig.hidden=!$scope.jsonDocConfig.hidden,$timeout(function(){$location.hash(anchor),$anchorScroll()})};var interfacesByHash={};_.each($scope.interfaces,function(iface){interfacesByHash[iface.hash]=iface}),$scope.serviceTags=function(){var tagNames=[];return _.each($scope.interfaces,function(currentInterface){_.each(currentInterface.tags,function(tagName){tagNames.push(tagName)})}),tagNames=_.uniq(tagNames),_.map(tagNames,function(tagName){return{name:tagName,selected:!1}})}(),$scope.isServiceTagSelected=function(tagName){var tag=_.find($scope.serviceTags,function(serviceTag){return serviceTag.name===tagName});return tag.selected},$scope.projectWarningsByType=function(){var result={};return _.each($scope.projectWarnings,function(projectWarning){result[projectWarning.category]=result[projectWarning.category]||[],result[projectWarning.category].push(projectWarning)}),result}(),$scope.resourceTree=splitPaths(com.qmino.miredot.
 restApiSource.interfaces),$scope.getFirstLeaf=function(resource){var orderBy=$filter("orderBy");if(resource.leafResources.length>0){var orderedLeafResources=orderBy(resource.leafResources,"url");return orderedLeafResources[0]}return $scope.getFirstLeaf(orderBy(resource.resources,"name")[0])},$scope.openResource=function(url,hash){$scope.currentResource=findParent(url),window.location="#"+hash},void 0!==$scope.interfaces&&null!==$scope.interfaces&&$scope.interfaces.length>0?$scope.currentResource=findParent($scope.getFirstLeaf($scope.resourceTree[0]).url):$scope.currentResource=null,$scope.currentResourceSet=function(){return $scope.singlePage?$scope.interfaces:_.filter($scope.interfaces,function(el){return _.find($scope.currentResource.leafResources,function(leaf){return leaf.url==el.url})})},$scope.isResourceVisible=function(url){return $scope.singlePage?!1:_.find($scope.currentResource.leafResources,function(leaf){return leaf.url===url})},$scope.isComplexObject=function(type){retu
 rn angular.isObject(type)},$scope.getInterfaceByHash=function(interfaceHash){return interfacesByHash[interfaceHash]},$scope.interfaceHttpOrderFunction=function(iface){return _.indexOf($scope.httpMethods,iface.http)},$scope.methodHttpOrderFunction=function(method){return _.indexOf($scope.httpMethods,method.method)},$scope.httpMethods=["GET","HEAD","PUT","POST","DELETE","OPTIONS"],_.each(customHttpMethods,function(httpMethod){$scope.httpMethods.push(httpMethod)}),$scope.toggleSearchQueryHttp=function(http){$scope.searchQuery.http===http?$scope.searchQuery.http="":$scope.searchQuery.http=http},$scope.setGlobalCollapsedState=setGlobalCollapsedState,$scope.collapseTree=function(){collapseResources($scope.resourceTree,!1)},$scope.expandTree=function(){collapseResources($scope.resourceTree,!0)},setView($location.hash()),void 0===com.qmino.miredot.restApiSource.initialCollapseLevel||null===com.qmino.miredot.restApiSource.initialCollapseLevel?countResources($scope.resourceTree,null)>35?($sco
 pe.collapseTree(),collapseResources($scope.resourceTree,!1,0)):($scope.expandTree(),collapseResources($scope.resourceTree,!0,0)):($scope.collapseTree(),collapseResources($scope.resourceTree,!0,0)),createSearchIndex(),$scope.doFullTextSearch=function(){if(""===$scope.fullTextSearch)searchResults=null;else{searchResults=[];var results=searchIdx.search($scope.fullTextSearch);_.each(results,function(result){searchResults.push(searchDocs[result.ref].iface)})}}}function parseKeyValue(keyValue){var key_value,key,obj={};return angular.forEach((keyValue||"").split("&"),function(keyValue){keyValue&&(key_value=keyValue.split("="),key=decodeURIComponent(key_value[0]),obj[key]=angular.isDefined(key_value[1])?decodeURIComponent(key_value[1]):!0)}),obj}function enumArrayToString(enumType){var enumArray=[];null!==enumType.jsonValueMappings&&void 0!==enumType.jsonValueMappings?_.forEach(enumType.values,function(value){enumArray.push({name:enumType.jsonValueMappings[value.name]})}):enumArray=enumType
 .values;for(var output="",i=0;i<enumArray.length;i++)0!=i&&(output+=" | "),output+=enumArray[i].name;return output}function escapeHtml(value){return value.toString().replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;")}function getNextEnumId(){return"enum_"+counter++}function enumComment(enumType){var enumArray=enumType.values,comment="";return null!==enumType.jsonValueComment&&void 0!==enumType.jsonValueComment&&""!==enumType.jsonValueComment&&(comment+=enumType.jsonValueComment+"<br/>"),comment+="<ul>",_.each(enumArray,function(value){null!==value.comment&&(comment+=void 0!==enumType.jsonValueMappings&&null!==enumType.jsonValueMappings[value.name]&&void 0!==enumType.jsonValueMappings[value.name]&&""!==enumType.jsonValueMappings[value.name]?"<li><strong>"+enumType.jsonValueMappings[value.name]+":</strong> "+value.comment+"<br/></li>":"<li><strong>"+value.name+":</strong> "+value.comment+"<br/></li>")}),comment+="</ul>","<ul></ul>"===comment?"":' <span class="propertyCom
 ment, border" data-container="body" data-toggle="popover" data-trigger="hover" popover data-placement="right" id="'+getNextEnumId()+'" data-content="'+escapeHtml(comment)+'"><span>...</span></span>'}function hideAfterTimeout(elem){setTimeout(function(){$(".popover:hover").length||$("#"+elem.attr("id")+":hover").length||elem.popover("hide")},250)}function collectAllComments(to,history){history=history||[];var comment="";switch(void 0!==to.name&&null!==to.name&&(comment+=to.name),void 0!==to.comment&&null!==to.comment&&(comment+=(""===comment?"":": ")+$("<div>"+to.comment+"</div>").text()),void 0!==to.fullComment&&null!==to.fullComment&&(comment+="\n"+$("<div>"+to.fullComment+"</div>").text()),to.typeValue.type){case"simple":break;case"enum":_.each(to.typeValue.values,function(value){comment+="\n"+value.name+(null!==value.comment?": "+value.comment:"")});break;case"collection":comment+="\n"+collectAllComments(to.typeValue,history);break;case"map":comment+="\n"+collectAllComments(to.ty
 peValue,history);break;case"abstract":if(-1===_.indexOf(history,to.typeValue.name)){var newHistory=history.slice(0);newHistory.push(to.typeValue.name),_.each(to.typeValue.subTypes,function(subType){_.each(subType.to.content,function(field){comment+="\n"+collectAllComments(field,newHistory)})})}break;case"complex":if(-1===_.indexOf(history,to.typeValue.name)){var newHistory=history.slice(0);newHistory.push(to.typeValue.name),_.each(to.typeValue.content,function(field){comment+="\n"+collectAllComments(field,newHistory)})}}return comment}function createSearchIndex(){searchIdx=lunr(function(){this.field("url",{boost:1}),this.field("title",{boost:1}),this.field("comment",{boost:1}),this.field("body",{boost:1}),this.field("output",{boost:1}),this.field("params",{boost:1}),this.field("statusCodes",{boost:1})}),searchIdx.pipeline.reset(),searchIdx.pipeline.add(lunr.stemmer);var idx=0;_.each(com.qmino.miredot.restApiSource.interfaces,function(iface){var doc={id:idx,iface:iface,url:iface.url.
 replace(/\//g," "),title:iface.title,comment:$("<div>"+iface.beschrijving+"</div>").text(),body:"",output:"",params:"",statusCodes:""};++idx,_.each(iface.inputs.PATH,function(param){doc.params+=collectAllComments(param)+"\n"}),_.each(iface.inputs.QUERY,function(param){doc.params+=collectAllComments(param)+"\n"}),_.each(iface.inputs.HEADER,function(param){doc.params+=collectAllComments(param)+"\n"}),_.each(iface.inputs.COOKIE,function(param){doc.params+=collectAllComments(param)+"\n"}),_.each(iface.inputs.MATRIX,function(param){doc.params+=collectAllComments(param)+"\n"}),_.each(iface.inputs.BODY,function(param){doc.body+=collectAllComments(param)+"\n"}),void 0!==iface.output.typeValue&&(doc.output+=collectAllComments(iface.output)),_.each(iface.statusCodes,function(statusCode){doc.statusCodes+=statusCode.httpCode,null!==statusCode.comment&&void 0!==statusCode.comment&&(doc.statusCodes+=": "+statusCode.comment),doc.statusCodes+="\n"}),searchDocs.push(doc)}),_.each(searchDocs,function
 (doc){searchIdx.add(doc)})}angular.module("miredot",["miredot.filters","miredot.directives","ui.bootstrap.buttons","watchFighers","ngStorage"]).config(["$compileProvider","$locationProvider",function($compileProvider,$locationProvider){$compileProvider.aHrefSanitizationWhitelist(/^\s*(https?|ftp|mailto|file|tel):/),$locationProvider.html5Mode(!0)}]);var counter=0;String.prototype.stripTrailingSlash=function(){return"/"===this.substr(-1)?this.substr(0,this.length-1):this},String.prototype.ensureStartsWithSlash=function(){return"/"!==this.substr(0,1)?"/"+this:this},angular.module("miredot.directives",[]),angular.module("miredot.directives").directive("jsonTo",function($compile){function getNewId(){return _idCount++}function getHighlightHtml(to){var html="",id=to.__md_id||to.__sub_id,addHoverClass="onmouseover=\"$('#"+id+"').addClass('highlightJsonRecursive');\"",removeHoverClass="onmouseout=\"$('#"+id+"').removeClass('highlightJsonRecursive');\"";return html+='<a href="#'+id+'_a" '+ad
 dHoverClass+" "+removeHoverClass+' class="recursionLink" target="_self" title="recursion">',html+='<i class="icon-retweet"></i>',html+="</a>"}var _idCount=0;return{restrict:"E",transclude:!1,scope:{to:"=",jsonDocConfig:"=",toggleJsonDoc:"="},link:function(scope,element,attrs){function buildKey(key){if(null!==key&&void 0!==key){if("simple"===key.type)return"string";if("enum"===key.type)return enumArrayToString(key)+enumComment(key)}return"string"}function buildComment(comment,fullComment){var result="";if(scope.jsonDocConfig.enabled&&comment){if(result+='<span class="propertyComment" ng-show="!jsonDocConfig.hidden">',result+=comment,null!==fullComment&&void 0!==fullComment){var id="full_"+getNewId();result+=' <span class="propertyComment, border" data-container="body" data-toggle="popover" id="'+id+'" popover data-placement="right" data-content="'+escapeHtml(fullComment)+'"><span>...</span></span>'}result+="</span>"}return result}function buildSubTypeSwitcher(to,beforeFieldComment,af
 terFieldComment){var html="";return html+='<li class="parameterItem">',to.property&&(html+='<span class="parameterName">'+to.property+":</span>"),html+=beforeFieldComment,html+=buildComment(to.propertyComment,to.fullComment),html+="</li>",html+=afterFieldComment}function buildToProperties(to,history){function createSubTypeButton(subType){return'<div class="btn" ng-model="$parent.'+subTypeModel+'" btn-radio="\''+subType.to.__sub_id+"'\">"+subType.name+"</div>"}function appendSubTypeChooser(){html+='<span ng-show="jsonDocConfig.hidden">';var beforeFieldComment='<span class="parameterType"><div class="btn-group">';_.each(to.subTypes,function(subType){beforeFieldComment+=createSubTypeButton(subType)}),beforeFieldComment+="</div></span>",html+=buildSubTypeSwitcher(to,beforeFieldComment,""),html+="</span>",html+='<span ng-show="!jsonDocConfig.hidden">';var afterFieldComment='<span class="subTypeSwitch">';afterFieldComment+='<span class="btn-group-vertical">',_.each(to.subTypes,function(su
 bType){afterFieldComment+="<span>",afterFieldComment+=createSubTypeButton(subType),subType.comment&&(afterFieldComment+='<span class="propertyComment">',afterFieldComment+=subType.comment,afterFieldComment+="</span>"),afterFieldComment+="</span>"}),afterFieldComment+="</span>",afterFieldComment+="</span>",html+=buildSubTypeSwitcher(to,"",afterFieldComment),html+="</span>"}function appendProperty(field){html+='<li class="parameterItem">',html+='<span class="parameterName">'+field.name,field.required&&(html+='<span class="required" title="Required Field">*</span>'),html+=":</span>",html+=build(field.typeValue,field.comment,field.fullComment,history),html+="</li>"}var html="",subTypeModel=null;return"abstract"===to.type&&(subTypeModel="subTypeModel"+getNewId(),_.each(to.subTypes,function(subType){subType.to.__sub_id="md_to_"+getNewId()}),scope[subTypeModel]=to.subTypes[0].to.__sub_id),to.subTypes?_.each(to.subTypes,function(subType){html+='<a id="'+subType.to.__sub_id+'_a" class="ancho
 r"></a>',html+='<div ng-if="'+subTypeModel+" == '"+subType.to.__sub_id+'\'" id="'+subType.to.__sub_id+'">',subType.to.ordered||appendSubTypeChooser(),_.each(subType.to.content,function(field){field.name===to.property?subType.to.ordered&&appendSubTypeChooser():appendProperty(field)}),html+="</div>"}):_.each(to.content,function(field){appendProperty(field)}),html}var build=function(to,comment,fullComment,history){history=history||[];var newHistory,html="";switch(to.type){case"simple":html+='<span class="parameterType">',html+=to.typeValue,html+="</span>",html+=buildComment(comment,fullComment);break;case"enum":html+='<span class="parameterType">',html+=enumArrayToString(to)+enumComment(to),html+="</span>",html+=buildComment(comment,fullComment);break;case"collection":html+="<span>[</span>",html+=buildComment(comment,fullComment),html+='<ul class="toContainer"><li class="parameterItem">',html+=build(to.typeValue,to.comment,to.fullComment,history),html+="</li></ul>",html+="<span>]</span
 >";break;case"map":html+="<span>{</span>",html+=buildComment(comment,fullComment),html+='<ul class="toContainer"><li class="parameterItem">',html+='<span class="parameterType">',html+=buildKey(to.typeKey),html+="</span> =>",html+=build(to.typeValue,to.comment,to.fullComment,history),html+="</li></ul>",html+="<span>}</span>";break;default:_.indexOf(history,to.name)>=0?(html+=getHighlightHtml(to),html+=buildComment(comment,fullComment)):(newHistory=history.slice(0),newHistory.push(to.name),to.__md_id="md_to_"+getNewId(),html+=buildComment(comment,fullComment),html+='<a id="'+to.__md_id+'_a" class="anchor"></a>',html+='<div id="'+to.__md_id+'">',html+="<span>{</span>",html+='<ul class="toContainer">',html+=buildToProperties(to,newHistory),html+="</ul>",html+="<span>}</span>",html+="</div>")}return html},anchorName="json_"+getNewId(),anchorHtml='<a name="'+anchorName+'"/>',togglePropertyCommentsHtml="";scope.jsonDocConfig.enabled&&(togglePropertyCommentsHtml+='<span class="togglePropert
 yComments" ng-click="toggleJsonDoc(\''+anchorName+'\')"><span ng-show="jsonDocConfig.hidden">Show</span><span ng-show="!jsonDocConfig.hidden">Hide</span> descriptions</span>');var newElement=angular.element(anchorHtml+togglePropertyCommentsHtml+build(scope.to));$compile(newElement)(scope),element.replaceWith(newElement)}}}).directive("widthonblur",function(){return function(scope,element,attrs){element.css("width",attrs.widthonblur),element.bind("blur",function(){element.css("width",attrs.widthonblur)})}}).directive("widthonfocus",function(){return function(scope,element,attrs){element.bind("focus",function(){element.css("width",attrs.widthonfocus)})}}).directive("onFocus",["$parse",function($parse){return function(scope,element,attr){var fn=$parse(attr.onFocus);element.bind("focus",function(event){scope.$apply(function(){fn(scope,{$event:event})})})}}]).directive("onBlur",["$parse",function($parse){return function(scope,element,attr){var fn=$parse(attr.onBlur);element.bind("blur",f
 unction(event){scope.$apply(function(){fn(scope,{$event:event})})})}}]).directive("focusWhen",function($parse,$timeout){return function(scope,element,attr){scope.$watch(attr.focusWhen,function(newValue,oldValue){!oldValue&&newValue&&$timeout(function(){if(element.focus(),element.val()){var tmpStr=element.val();element.val(""),element.val(tmpStr)}})},!0)}}).directive("onEnter",function(){return function(scope,element,attrs){element.bind("keydown keypress",function(event){13===event.which&&(scope.$apply(function(){scope.$eval(attrs.onEnter)}),event.preventDefault())})}}).directive("popover",function(){return function(scope,elem){elem.popover({trigger:"manual",html:!0}).on("mouseenter",function(){$(this).popover("show"),$(".popover").on("mouseleave",function(){hideAfterTimeout(elem)}).on("click",function(){elem.popover("hide")})}).on("mouseleave",function(){hideAfterTimeout(elem)})}}),angular.module("miredot.filters",["ngSanitize","ui.filters"]).filter("formatUrlParams",function(){retu
 rn function(value){if(!value)return value;value=value.toString();for(var firstOpen=0,lastClose=0,openCount=0,result="",i=0;i<value.length;++i)"{"===value.substr(i,1)?(0===openCount&&(firstOpen=i),++openCount):"}"===value.substr(i,1)&&openCount>0&&(--openCount,0===openCount&&(result+=value.substring(lastClose,firstOpen)+'<span class="paramName">'+value.substring(firstOpen+1,i)+"</span>",lastClose=i+1));return result+=value.substr(lastClose)}}).filter("capitaliseFirstLetter",function(){return function(string){return string.charAt(0).toUpperCase()+string.slice(1).toLowerCase()}}).filter("arraySort",function(){return function(input){return input.sort()}}).filter("searchByExampleFilter",function(){function getRegExp(iface){var url=iface.url.stripTrailingSlash();url="^"+url+"$";for(var paramMatch,regex="",re=/{([^\}]+)}/g,lastMatchedIndex=0;null!==(paramMatch=re.exec(url));){regex+=url.slice(lastMatchedIndex,paramMatch.index);var pathParam=paramMatch[1];if(pathParam.indexOf(":")>0){var pa
 ramRegex=jQuery.trim(pathParam.split(":")[1]);regex+="("+paramRegex+")"}else regex+="([^\\/]*)";lastMatchedIndex=re.lastIndex}return regex+=url.substr(lastMatchedIndex),new RegExp(regex,"i")}function searchByExampleFilter(searchString){return function(currentInterface,baseUrl){if(0===searchString.length)return!0;var split=searchString.split("?"),locationPart=split[0],queryPart=split[1];if(angular.isDefined(queryPart)){var queryParams=parseKeyValue(queryPart),valid=!0;if(angular.forEach(currentInterface.inputs.QUERY,function(queryParam){valid=valid&&(valid=angular.isDefined(queryParams[queryParam.name.toLowerCase()]))}),!valid)return!1}var search=locationPart.replace(baseUrl,"").stripTrailingSlash().ensureStartsWithSlash();return currentInterface.regexp=currentInterface.regexp||getRegExp(currentInterface),currentInterface.regexp.test(search)}}return function(iface,searchString,baseUrl){return searchByExampleFilter(searchString)(iface,baseUrl)}}).filter("filterBySearchQuery",function(
 ){function recursiveMatch(searchQuery){return function(resource){if(0===searchQuery.url.length)return!0;if(resource.name.toLowerCase().indexOf(searchQuery.url.toLowerCase())>-1)return!0;for(var i=0;i<resource.leafResources.length;i++)if(resource.leafResources[i].url.toLowerCase().indexOf(searchQuery.url.toLowerCase())>-1)return!0;for(var j=0;j<resource.resources.length;j++)if(recursiveMatch(searchQuery)(resource.resources[j]))return!0;return!1}}return function(resource,searchQuery){return recursiveMatch(searchQuery)(resource)}}).filter("serviceTagFilter",function(){function matchesServiceTags(serviceTags){return function(currentInterface){return _.every(serviceTags,function(serviceTag){return serviceTag.selected?_.contains(currentInterface.tags,serviceTag.name):!0})}}return function(currentInterface,serviceTags){return matchesServiceTags(serviceTags)(currentInterface)}}).filter("searchQueryFilter",function(){function matchesSearchQuery(searchQuery){return function(currentInterface){
 return searchQuery.http&&currentInterface.http.indexOf(searchQuery.http)<0?!1:searchQuery.url&&currentInterface.url.toLowerCase().indexOf(searchQuery.url.toLowerCase())<0?!1:!0}}return function(currentInterface,searchQuery){return matchesSearchQuery(searchQuery)(currentInterface)}}).filter("fullTextSearchFilter",function(){return function(currentInterface){return void 0===searchResults||null===searchResults?!0:-1!==searchResults.indexOf(currentInterface)}}),function(){function _storageFactory(storageType){return["$rootScope","$browser","$window",function($rootScope,$browser,$window){var _last$storage,webStorage=$window[storageType],$storage={$default:function(items){for(var k in items)angular.isDefined($storage[k])||($storage[k]=items[k]);return $storage},$reset:function(items){for(var k in $storage)"$"===k[0]||delete $storage[k];return $storage.$default(items)}};webStorage=webStorage||{setItem:function(){},getItem:function(){},removeItem:function(){}};for(var k,i=0;i<webStorage.len
 gth&&(k=webStorage.key(i));i++)"ngStorage-"===k.slice(0,10)&&($storage[k.slice(10)]=angular.fromJson(webStorage.getItem(k)));return _last$storage=angular.copy($storage),$browser.addPollFn(function(){if(!angular.equals($storage,_last$storage)){angular.forEach($storage,function(v,k){angular.isDefined(v)&&"$"!==k[0]&&($storage[k]=angular.fromJson(angular.toJson(v)),webStorage.setItem("ngStorage-"+k,angular.toJson(v))),delete _last$storage[k]});for(var k in _last$storage)webStorage.removeItem("ngStorage-"+k);_last$storage=angular.copy($storage),$rootScope.$apply()}}),"localStorage"===storageType&&$window.addEventListener&&$window.addEventListener("storage",function(event){"ngStorage-"===event.key.slice(0,10)&&(event.newValue?$storage[event.key.slice(10)]=angular.fromJson(event.newValue):delete $storage[event.key.slice(10)],_last$storage=angular.copy($storage),$rootScope.$apply())}),$storage}]}angular.module("ngStorage",[]).factory("$localStorage",_storageFactory("localStorage")).factory
 ("$sessionStorage",_storageFactory("sessionStorage"))}();var searchDocs=[],searchIdx=null,searchResults=null;
+angular.module("watchFighers",[]).directive("setIf",[function(){return{transclude:"element",priority:1e3,terminal:!0,restrict:"A",compile:function(element,attr,linker){return function(scope,iterStartElement,attr){iterStartElement[0].doNotMove=!0;var expression=attr.setIf,value=scope.$eval(expression);value&&linker(scope,function(clone){iterStartElement.after(clone)})}}}}]).directive("setHtml",function($compile){return{restrict:"A",priority:100,link:function($scope,$el,$attr){$($el).html($scope.$eval($attr.setHtml)||""),$compile($el.contents())($scope)}}}).directive("setText",function(){return{restrict:"A",priority:100,link:function($scope,$el,$attr){$($el).text($scope.$eval($attr.setText)||"")}}}).directive("setClass",function(){return{restrict:"A",priority:100,link:function($scope,$el,$attr){function setClass(attributeValue,$scope,$el){if(attributeValue.indexOf(":")>0){var classNameCondition=attributeValue.split(":",2),className=jQuery.trim(classNameCondition[0]),condition=$scope.$
 eval(jQuery.trim(classNameCondition[1]));condition&&$($el).addClass(className)}else $($el).addClass($scope.$eval(attributeValue)||"")}$attr.setClass.indexOf(",")>0?_.each($attr.setClass.split(","),function(attributeValue){setClass(jQuery.trim(attributeValue),$scope,$el)}):setClass($attr.setClass,$scope,$el)}}}).directive("setTitle",function(){return{restrict:"A",priority:100,link:function($scope,$el,$attr){$($el).attr("title",$scope.$eval($attr.setTitle)||"")}}}).directive("setHref",function(){return{restrict:"A",priority:100,link:function($scope,$el,$attr){$($el).attr("href",$scope.$eval($attr.setHref)||"")}}}).directive("setId",function(){return{restrict:"A",priority:100,link:function($scope,$el,$attr){$($el).attr("id",$scope.$eval($attr.setId)||"")}}});
\ No newline at end of file

Added: incubator/unomi/website/rest-api-doc/lib/angular-bootstrap/js/ui-bootstrap.js
URL: http://svn.apache.org/viewvc/incubator/unomi/website/rest-api-doc/lib/angular-bootstrap/js/ui-bootstrap.js?rev=1715397&view=auto
==============================================================================
--- incubator/unomi/website/rest-api-doc/lib/angular-bootstrap/js/ui-bootstrap.js (added)
+++ incubator/unomi/website/rest-api-doc/lib/angular-bootstrap/js/ui-bootstrap.js Fri Nov 20 17:42:33 2015
@@ -0,0 +1,2 @@
+angular.module("ui.bootstrap",["ui.bootstrap.transition","ui.bootstrap.collapse","ui.bootstrap.accordion","ui.bootstrap.alert","ui.bootstrap.buttons","ui.bootstrap.carousel","ui.bootstrap.datepicker","ui.bootstrap.dialog","ui.bootstrap.dropdownToggle","ui.bootstrap.modal","ui.bootstrap.pagination","ui.bootstrap.position","ui.bootstrap.tooltip","ui.bootstrap.popover","ui.bootstrap.progressbar","ui.bootstrap.rating","ui.bootstrap.tabs","ui.bootstrap.timepicker","ui.bootstrap.typeahead"]),angular.module("ui.bootstrap.transition",[]).factory("$transition",["$q","$timeout","$rootScope",function(e,t,n){function a(e){for(var t in e)if(void 0!==i.style[t])return e[t]}var o=function(a,i,r){r=r||{};var l=e.defer(),s=o[r.animation?"animationEndEventName":"transitionEndEventName"],u=function(){n.$apply(function(){a.unbind(s,u),l.resolve(a)})};return s&&a.bind(s,u),t(function(){angular.isString(i)?a.addClass(i):angular.isFunction(i)?i(a):angular.isObject(i)&&a.css(i),s||l.resolve(a)}),l.promise.
 cancel=function(){s&&a.unbind(s,u),l.reject("Transition cancelled")},l.promise},i=document.createElement("trans"),r={WebkitTransition:"webkitTransitionEnd",MozTransition:"transitionend",OTransition:"oTransitionEnd",transition:"transitionend"},l={WebkitTransition:"webkitAnimationEnd",MozTransition:"animationend",OTransition:"oAnimationEnd",transition:"animationend"};return o.transitionEndEventName=a(r),o.animationEndEventName=a(l),o}]),angular.module("ui.bootstrap.collapse",["ui.bootstrap.transition"]).directive("collapse",["$transition",function(e){var t=function(e,t,n){t.removeClass("collapse"),t.css({height:n}),t[0].offsetWidth,t.addClass("collapse")};return{link:function(n,a,o){var i,r=!0;n.$watch(function(){return a[0].scrollHeight},function(){0!==a[0].scrollHeight&&(i||(r?t(n,a,a[0].scrollHeight+"px"):t(n,a,"auto")))}),n.$watch(o.collapse,function(e){e?c():u()});var l,s=function(t){return l&&l.cancel(),l=e(a,t),l.then(function(){l=void 0},function(){l=void 0}),l},u=function(){r
 ?(r=!1,i||t(n,a,"auto")):s({height:a[0].scrollHeight+"px"}).then(function(){i||t(n,a,"auto")}),i=!1},c=function(){i=!0,r?(r=!1,t(n,a,0)):(t(n,a,a[0].scrollHeight+"px"),s({height:"0"}))}}}}]),angular.module("ui.bootstrap.accordion",["ui.bootstrap.collapse"]).constant("accordionConfig",{closeOthers:!0}).controller("AccordionController",["$scope","$attrs","accordionConfig",function(e,t,n){this.groups=[],this.closeOthers=function(a){var o=angular.isDefined(t.closeOthers)?e.$eval(t.closeOthers):n.closeOthers;o&&angular.forEach(this.groups,function(e){e!==a&&(e.isOpen=!1)})},this.addGroup=function(e){var t=this;this.groups.push(e),e.$on("$destroy",function(){t.removeGroup(e)})},this.removeGroup=function(e){var t=this.groups.indexOf(e);-1!==t&&this.groups.splice(this.groups.indexOf(e),1)}}]).directive("accordion",function(){return{restrict:"EA",controller:"AccordionController",transclude:!0,replace:!1,templateUrl:"template/accordion/accordion.html"}}).directive("accordionGroup",["$parse","
 $transition","$timeout",function(e){return{require:"^accordion",restrict:"EA",transclude:!0,replace:!0,templateUrl:"template/accordion/accordion-group.html",scope:{heading:"@"},controller:["$scope",function(){this.setHeading=function(e){this.heading=e}}],link:function(t,n,a,o){var i,r;o.addGroup(t),t.isOpen=!1,a.isOpen&&(i=e(a.isOpen),r=i.assign,t.$watch(function(){return i(t.$parent)},function(e){t.isOpen=e}),t.isOpen=i?i(t.$parent):!1),t.$watch("isOpen",function(e){e&&o.closeOthers(t),r&&r(t.$parent,e)})}}}]).directive("accordionHeading",function(){return{restrict:"EA",transclude:!0,template:"",replace:!0,require:"^accordionGroup",compile:function(e,t,n){return function(e,t,a,o){o.setHeading(n(e,function(){}))}}}}).directive("accordionTransclude",function(){return{require:"^accordionGroup",link:function(e,t,n,a){e.$watch(function(){return a[n.accordionTransclude]},function(e){e&&(t.html(""),t.append(e))})}}}),angular.module("ui.bootstrap.alert",[]).directive("alert",function(){ret
 urn{restrict:"EA",templateUrl:"template/alert/alert.html",transclude:!0,replace:!0,scope:{type:"=",close:"&"},link:function(e,t,n){e.closeable="close"in n}}}),angular.module("ui.bootstrap.buttons",[]).constant("buttonConfig",{activeClass:"active",toggleEvent:"click"}).directive("btnRadio",["buttonConfig",function(e){var t=e.activeClass||"active",n=e.toggleEvent||"click";return{require:"ngModel",link:function(e,a,o,i){i.$render=function(){a.toggleClass(t,angular.equals(i.$modelValue,e.$eval(o.btnRadio)))},a.bind(n,function(){a.hasClass(t)||e.$apply(function(){i.$setViewValue(e.$eval(o.btnRadio)),i.$render()})})}}}]).directive("btnCheckbox",["buttonConfig",function(e){var t=e.activeClass||"active",n=e.toggleEvent||"click";return{require:"ngModel",link:function(e,a,o,i){var r=e.$eval(o.btnCheckboxTrue),l=e.$eval(o.btnCheckboxFalse);r=angular.isDefined(r)?r:!0,l=angular.isDefined(l)?l:!1,i.$render=function(){a.toggleClass(t,angular.equals(i.$modelValue,r))},a.bind(n,function(){e.$apply(
 function(){i.$setViewValue(a.hasClass(t)?l:r),i.$render()})})}}}]),angular.module("ui.bootstrap.carousel",["ui.bootstrap.transition"]).controller("CarouselController",["$scope","$timeout","$transition","$q",function(e,t,n){function a(){function n(){i?(e.next(),a()):e.pause()}o&&t.cancel(o);var r=+e.interval;!isNaN(r)&&r>=0&&(o=t(n,r))}var o,i,r=this,l=r.slides=[],s=-1;r.currentSlide=null,r.select=function(o,i){function u(){r.currentSlide&&angular.isString(i)&&!e.noTransition&&o.$element?(o.$element.addClass(i),o.$element[0].offsetWidth=o.$element[0].offsetWidth,angular.forEach(l,function(e){angular.extend(e,{direction:"",entering:!1,leaving:!1,active:!1})}),angular.extend(o,{direction:i,active:!0,entering:!0}),angular.extend(r.currentSlide||{},{direction:i,leaving:!0}),e.$currentTransition=n(o.$element,{}),function(t,n){e.$currentTransition.then(function(){c(t,n)},function(){c(t,n)})}(o,r.currentSlide)):c(o,r.currentSlide),r.currentSlide=o,s=p,a()}function c(t,n){angular.extend(t,{d
 irection:"",active:!0,leaving:!1,entering:!1}),angular.extend(n||{},{direction:"",active:!1,leaving:!1,entering:!1}),e.$currentTransition=null}var p=l.indexOf(o);void 0===i&&(i=p>s?"next":"prev"),o&&o!==r.currentSlide&&(e.$currentTransition?(e.$currentTransition.cancel(),t(u)):u())},r.indexOfSlide=function(e){return l.indexOf(e)},e.next=function(){var t=(s+1)%l.length;return e.$currentTransition?void 0:r.select(l[t],"next")},e.prev=function(){var t=0>s-1?l.length-1:s-1;return e.$currentTransition?void 0:r.select(l[t],"prev")},e.select=function(e){r.select(e)},e.isActive=function(e){return r.currentSlide===e},e.slides=function(){return l},e.$watch("interval",a),e.play=function(){i||(i=!0,a())},e.pause=function(){e.noPause||(i=!1,o&&t.cancel(o))},r.addSlide=function(t,n){t.$element=n,l.push(t),1===l.length||t.active?(r.select(l[l.length-1]),1==l.length&&e.play()):t.active=!1},r.removeSlide=function(e){var t=l.indexOf(e);l.splice(t,1),l.length>0&&e.active?t>=l.length?r.select(l[t-1]):r
 .select(l[t]):s>t&&s--}}]).directive("carousel",[function(){return{restrict:"EA",transclude:!0,replace:!0,controller:"CarouselController",require:"carousel",templateUrl:"template/carousel/carousel.html",scope:{interval:"=",noTransition:"=",noPause:"="}}}]).directive("slide",["$parse",function(e){return{require:"^carousel",restrict:"EA",transclude:!0,replace:!0,templateUrl:"template/carousel/slide.html",scope:{},link:function(t,n,a,o){if(a.active){var i=e(a.active),r=i.assign,l=t.active=i(t.$parent);t.$watch(function(){var e=i(t.$parent);return e!==t.active&&(e!==l?l=t.active=e:r(t.$parent,e=l=t.active)),e})}o.addSlide(t,n),t.$on("$destroy",function(){o.removeSlide(t)}),t.$watch("active",function(e){e&&o.select(t)})}}}]),angular.module("ui.bootstrap.datepicker",[]).constant("datepickerConfig",{dayFormat:"dd",monthFormat:"MMMM",yearFormat:"yyyy",dayHeaderFormat:"EEE",dayTitleFormat:"MMMM yyyy",monthTitleFormat:"yyyy",showWeeks:!0,startingDay:0,yearRange:20}).directive("datepicker",["d
 ateFilter","$parse","datepickerConfig",function(e,t,n){return{restrict:"EA",replace:!0,scope:{model:"=ngModel",dateDisabled:"&"},templateUrl:"template/datepicker/datepicker.html",link:function(a,o,r){function l(e,t,n){a.rows=e,a.labels=t,a.title=n}function s(){a.showWeekNumbers="day"===a.mode&&p}function u(e,t){return"year"===a.mode?t.getFullYear()-e.getFullYear():"month"===a.mode?new Date(t.getFullYear(),t.getMonth())-new Date(e.getFullYear(),e.getMonth()):"day"===a.mode?new Date(t.getFullYear(),t.getMonth(),t.getDate())-new Date(e.getFullYear(),e.getMonth(),e.getDate()):void 0}function c(e){return d&&u(e,d)>0||f&&0>u(e,f)||a.dateDisabled&&a.dateDisabled({date:e,mode:a.mode})}a.mode="day";var p,d,f,m=new Date,g={};g.day=angular.isDefined(r.dayFormat)?a.$eval(r.dayFormat):n.dayFormat,g.month=angular.isDefined(r.monthFormat)?a.$eval(r.monthFormat):n.monthFormat,g.year=angular.isDefined(r.yearFormat)?a.$eval(r.yearFormat):n.yearFormat,g.dayHeader=angular.isDefined(r.dayHeaderFormat)?a
 .$eval(r.dayHeaderFormat):n.dayHeaderFormat,g.dayTitle=angular.isDefined(r.dayTitleFormat)?a.$eval(r.dayTitleFormat):n.dayTitleFormat,g.monthTitle=angular.isDefined(r.monthTitleFormat)?a.$eval(r.monthTitleFormat):n.monthTitleFormat;var h=angular.isDefined(r.startingDay)?a.$eval(r.startingDay):n.startingDay,v=angular.isDefined(r.yearRange)?a.$eval(r.yearRange):n.yearRange;r.showWeeks?a.$parent.$watch(t(r.showWeeks),function(e){p=!!e,s()}):(p=n.showWeeks,s()),r.min&&a.$parent.$watch(t(r.min),function(e){d=new Date(e),w()}),r.max&&a.$parent.$watch(t(r.max),function(e){f=new Date(e),w()});var $=function(e,t){for(var n=[];e.length>0;)n.push(e.splice(0,t));return n},b=function(e,t){return new Date(e,t+1,0).getDate()},y={day:function(){function t(t,a,i){for(var r=0;a>r;r++)n.push({date:new Date(t),isCurrent:i,isSelected:k(t),label:e(t,g.day),disabled:c(t)}),t.setDate(t.getDate()+1);o=t}var n=[],a=[],o=null,r=new Date(m);r.setDate(1);var s=h-r.getDay(),u=s>0?7-s:-s;for(u>0&&(r.setDate(-u+1)
 ,t(r,u,!1)),t(o||r,b(m.getFullYear(),m.getMonth()),!0),t(o,(7-n.length%7)%7,!1),i=0;7>i;i++)a.push(e(n[i].date,g.dayHeader));l($(n,7),a,e(m,g.dayTitle))},month:function(){for(var t=[],n=0,a=m.getFullYear();12>n;){var o=new Date(a,n++,1);t.push({date:o,isCurrent:!0,isSelected:k(o),label:e(o,g.month),disabled:c(o)})}l($(t,3),[],e(m,g.monthTitle))},year:function(){for(var t=[],n=parseInt((m.getFullYear()-1)/v,10)*v+1,a=0;v>a;a++){var o=new Date(n+a,0,1);t.push({date:o,isCurrent:!0,isSelected:k(o),label:e(o,g.year),disabled:c(o)})}var i=t[0].label+" - "+t[t.length-1].label;l($(t,5),[],i)}},w=function(){y[a.mode]()},k=function(e){if(a.model&&a.model.getFullYear()===e.getFullYear()){if("year"===a.mode)return!0;if(a.model.getMonth()===e.getMonth())return"month"===a.mode||"day"===a.mode&&a.model.getDate()===e.getDate()}return!1};a.$watch("model",function(e,t){angular.isDate(e)&&(m=angular.copy(e)),angular.equals(e,t)||w()}),a.$watch("mode",function(){s(),w()}),a.select=function(e){m=new Dat
 e(e),"year"===a.mode?(a.mode="month",m.setFullYear(e.getFullYear())):"month"===a.mode?(a.mode="day",m.setMonth(e.getMonth())):"day"===a.mode&&(a.model=new Date(m))},a.move=function(e){"day"===a.mode?m.setMonth(m.getMonth()+e):"month"===a.mode?m.setFullYear(m.getFullYear()+e):"year"===a.mode&&m.setFullYear(m.getFullYear()+e*v),w()},a.toggleMode=function(){a.mode="day"===a.mode?"month":"month"===a.mode?"year":"day"},a.getWeekNumber=function(e){if("day"===a.mode&&a.showWeekNumbers&&7===e.length){var t=h>4?11-h:4-h,n=new Date(e[t].date);return n.setHours(0,0,0),Math.ceil(((n-new Date(n.getFullYear(),0,1))/864e5+1)/7)}}}}}]);var dialogModule=angular.module("ui.bootstrap.dialog",["ui.bootstrap.transition"]);dialogModule.controller("MessageBoxController",["$scope","dialog","model",function(e,t,n){e.title=n.title,e.message=n.message,e.buttons=n.buttons,e.close=function(e){t.close(e)}}]),dialogModule.provider("$dialog",function(){var e={backdrop:!0,dialogClass:"modal",backdropClass:"modal-ba
 ckdrop",transitionClass:"fade",triggerClass:"in",resolve:{},backdropFade:!1,dialogFade:!1,keyboard:!0,backdropClick:!0},t={},n={value:0};this.options=function(e){t=e},this.$get=["$http","$document","$compile","$rootScope","$controller","$templateCache","$q","$transition","$injector",function(a,o,i,r,l,s,u,c,p){function d(e){var t=angular.element("<div>");return t.addClass(e),t}function f(n){var a=this,o=this.options=angular.extend({},e,t,n);this._open=!1,this.backdropEl=d(o.backdropClass),o.backdropFade&&(this.backdropEl.addClass(o.transitionClass),this.backdropEl.removeClass(o.triggerClass)),this.modalEl=d(o.dialogClass),o.dialogFade&&(this.modalEl.addClass(o.transitionClass),this.modalEl.removeClass(o.triggerClass)),this.handledEscapeKey=function(e){27===e.which&&(a.close(),e.preventDefault(),a.$scope.$apply())},this.handleBackDropClick=function(e){a.close(),e.preventDefault(),a.$scope.$apply()},this.handleLocationChange=function(){a.close()}}var m=o.find("body");return f.prototyp
 e.isOpen=function(){return this._open},f.prototype.open=function(e,t){var n=this,a=this.options;if(e&&(a.templateUrl=e),t&&(a.controller=t),!a.template&&!a.templateUrl)throw Error("Dialog.open expected template or templateUrl, neither found. Use options or open method to specify them.");return this._loadResolves().then(function(e){var t=e.$scope=n.$scope=e.$scope?e.$scope:r.$new();if(n.modalEl.html(e.$template),n.options.controller){var a=l(n.options.controller,e);n.modalEl.children().data("ngControllerController",a)}i(n.modalEl)(t),n._addElementsToDom(),setTimeout(function(){n.options.dialogFade&&n.modalEl.addClass(n.options.triggerClass),n.options.backdropFade&&n.backdropEl.addClass(n.options.triggerClass)}),n._bindEvents()}),this.deferred=u.defer(),this.deferred.promise},f.prototype.close=function(e){function t(e){e.removeClass(a.options.triggerClass)}function n(){a._open&&a._onCloseComplete(e)}var a=this,o=this._getFadingElements();if(o.length>0)for(var i=o.length-1;i>=0;i--)c(o
 [i],t).then(n);else this._onCloseComplete(e)},f.prototype._getFadingElements=function(){var e=[];return this.options.dialogFade&&e.push(this.modalEl),this.options.backdropFade&&e.push(this.backdropEl),e},f.prototype._bindEvents=function(){this.options.keyboard&&m.bind("keydown",this.handledEscapeKey),this.options.backdrop&&this.options.backdropClick&&this.backdropEl.bind("click",this.handleBackDropClick)},f.prototype._unbindEvents=function(){this.options.keyboard&&m.unbind("keydown",this.handledEscapeKey),this.options.backdrop&&this.options.backdropClick&&this.backdropEl.unbind("click",this.handleBackDropClick)},f.prototype._onCloseComplete=function(e){this._removeElementsFromDom(),this._unbindEvents(),this.deferred.resolve(e)},f.prototype._addElementsToDom=function(){m.append(this.modalEl),this.options.backdrop&&(0===n.value&&m.append(this.backdropEl),n.value++),this._open=!0},f.prototype._removeElementsFromDom=function(){this.modalEl.remove(),this.options.backdrop&&(n.value--,0===
 n.value&&this.backdropEl.remove()),this._open=!1},f.prototype._loadResolves=function(){var e,t=[],n=[],o=this;return this.options.template?e=u.when(this.options.template):this.options.templateUrl&&(e=a.get(this.options.templateUrl,{cache:s}).then(function(e){return e.data})),angular.forEach(this.options.resolve||[],function(e,a){n.push(a),t.push(angular.isString(e)?p.get(e):p.invoke(e))}),n.push("$template"),t.push(e),u.all(t).then(function(e){var t={};return angular.forEach(e,function(e,a){t[n[a]]=e}),t.dialog=o,t})},{dialog:function(e){return new f(e)},messageBox:function(e,t,n){return new f({templateUrl:"template/dialog/message.html",controller:"MessageBoxController",resolve:{model:function(){return{title:e,message:t,buttons:n}}}})}}}]}),angular.module("ui.bootstrap.dropdownToggle",[]).directive("dropdownToggle",["$document","$location",function(e){var t=null,n=angular.noop;return{restrict:"CA",link:function(a,o){a.$watch("$location.path",function(){n()}),o.parent().bind("click",
 function(){n()}),o.bind("click",function(a){var i=o===t;a.preventDefault(),a.stopPropagation(),t&&n(),i||(o.parent().addClass("open"),t=o,n=function(a){a&&(a.preventDefault(),a.stopPropagation()),e.unbind("click",n),o.parent().removeClass("open"),n=angular.noop,t=null},e.bind("click",n))})}}}]),angular.module("ui.bootstrap.modal",["ui.bootstrap.dialog"]).directive("modal",["$parse","$dialog",function(e,t){return{restrict:"EA",terminal:!0,link:function(n,a,o){var i,r=angular.extend({},n.$eval(o.uiOptions||o.bsOptions||o.options)),l=o.modal||o.show;r=angular.extend(r,{template:a.html(),resolve:{$scope:function(){return n}}});var s=t.dialog(r);a.remove(),i=o.close?function(){e(o.close)(n)}:function(){angular.isFunction(e(l).assign)&&e(l).assign(n,!1)},n.$watch(l,function(e){e?s.open().then(function(){i()}):s.isOpen()&&s.close()})}}}]),angular.module("ui.bootstrap.pagination",[]).controller("PaginationController",["$scope",function(e){e.noPrevious=function(){return 1===e.currentPage},e.
 noNext=function(){return e.currentPage===e.numPages},e.isActive=function(t){return e.currentPage===t},e.selectPage=function(t){!e.isActive(t)&&t>0&&e.numPages>=t&&(e.currentPage=t,e.onSelectPage({page:t}))}}]).constant("paginationConfig",{boundaryLinks:!1,directionLinks:!0,firstText:"First",previousText:"Previous",nextText:"Next",lastText:"Last",rotate:!0}).directive("pagination",["paginationConfig",function(e){return{restrict:"EA",scope:{numPages:"=",currentPage:"=",maxSize:"=",onSelectPage:"&"},controller:"PaginationController",templateUrl:"template/pagination/pagination.html",replace:!0,link:function(t,n,a){function o(e,t,n,a){return{number:e,text:t,active:n,disabled:a}}var i=angular.isDefined(a.boundaryLinks)?t.$eval(a.boundaryLinks):e.boundaryLinks,r=angular.isDefined(a.directionLinks)?t.$eval(a.directionLinks):e.directionLinks,l=angular.isDefined(a.firstText)?t.$parent.$eval(a.firstText):e.firstText,s=angular.isDefined(a.previousText)?t.$parent.$eval(a.previousText):e.previous
 Text,u=angular.isDefined(a.nextText)?t.$parent.$eval(a.nextText):e.nextText,c=angular.isDefined(a.lastText)?t.$parent.$eval(a.lastText):e.lastText,p=angular.isDefined(a.rotate)?t.$eval(a.rotate):e.rotate;t.$watch("numPages + currentPage + maxSize",function(){t.pages=[];var e=1,n=t.numPages,a=angular.isDefined(t.maxSize)&&t.maxSize<t.numPages;a&&(p?(e=Math.max(t.currentPage-Math.floor(t.maxSize/2),1),n=e+t.maxSize-1,n>t.numPages&&(n=t.numPages,e=n-t.maxSize+1)):(e=(Math.ceil(t.currentPage/t.maxSize)-1)*t.maxSize+1,n=Math.min(e+t.maxSize-1,t.numPages)));for(var d=e;n>=d;d++){var f=o(d,d,t.isActive(d),!1);t.pages.push(f)}if(a&&!p){if(e>1){var m=o(e-1,"...",!1,!1);t.pages.unshift(m)}if(t.numPages>n){var g=o(n+1,"...",!1,!1);t.pages.push(g)}}if(r){var h=o(t.currentPage-1,s,!1,t.noPrevious());t.pages.unshift(h);var v=o(t.currentPage+1,u,!1,t.noNext());t.pages.push(v)}if(i){var $=o(1,l,!1,t.noPrevious());t.pages.unshift($);var b=o(t.numPages,c,!1,t.noNext());t.pages.push(b)}t.currentPage>t
 .numPages&&t.selectPage(t.numPages)})}}}]).constant("pagerConfig",{previousText:"« Previous",nextText:"Next »",align:!0}).directive("pager",["pagerConfig",function(e){return{restrict:"EA",scope:{numPages:"=",currentPage:"=",onSelectPage:"&"},controller:"PaginationController",templateUrl:"template/pagination/pager.html",replace:!0,link:function(t,n,a){function o(e,t,n,a,o){return{number:e,text:t,disabled:n,previous:l&&a,next:l&&o}}var i=angular.isDefined(a.previousText)?t.$parent.$eval(a.previousText):e.previousText,r=angular.isDefined(a.nextText)?t.$parent.$eval(a.nextText):e.nextText,l=angular.isDefined(a.align)?t.$parent.$eval(a.align):e.align;t.$watch("numPages + currentPage",function(){t.pages=[];var e=o(t.currentPage-1,i,t.noPrevious(),!0,!1);t.pages.unshift(e);var n=o(t.currentPage+1,r,t.noNext(),!1,!0);t.pages.push(n),t.currentPage>t.numPages&&t.selectPage(t.numPages)})}}}]),angular.module("ui.bootstrap.position",[]).factory("$position",["$document","$window",function(e
 ,t){function n(e,n){return e.currentStyle?e.currentStyle[n]:t.getComputedStyle?t.getComputedStyle(e)[n]:e.style[n]}function a(e){return"static"===(n(e,"position")||"static")}var o,i;e.bind("mousemove",function(e){o=e.pageX,i=e.pageY});var r=function(t){for(var n=e[0],o=t.offsetParent||n;o&&o!==n&&a(o);)o=o.offsetParent;return o||n};return{position:function(t){var n=this.offset(t),a={top:0,left:0},o=r(t[0]);return o!=e[0]&&(a=this.offset(angular.element(o)),a.top+=o.clientTop,a.left+=o.clientLeft),{width:t.prop("offsetWidth"),height:t.prop("offsetHeight"),top:n.top-a.top,left:n.left-a.left}},offset:function(n){var a=n[0].getBoundingClientRect();return{width:n.prop("offsetWidth"),height:n.prop("offsetHeight"),top:a.top+(t.pageYOffset||e[0].body.scrollTop),left:a.left+(t.pageXOffset||e[0].body.scrollLeft)}},mouse:function(){return{x:o,y:i}}}}]),angular.module("ui.bootstrap.tooltip",["ui.bootstrap.position"]).provider("$tooltip",function(){function e(e){var t=/[A-Z]/g,n="-";return e.rep
 lace(t,function(e,t){return(t?n:"")+e.toLowerCase()})}var t={placement:"top",animation:!0,popupDelay:0},n={mouseenter:"mouseleave",click:"click",focus:"blur"},a={};this.options=function(e){angular.extend(a,e)},this.setTriggers=function(e){angular.extend(n,e)},this.$get=["$window","$compile","$timeout","$parse","$document","$position","$interpolate",function(o,i,r,l,s,u,c){return function(o,p,d){function f(e){var t,a;return t=e||m.trigger||d,a=angular.isDefined(m.trigger)?n[m.trigger]||t:n[t]||t,{show:t,hide:a}}var m=angular.extend({},t,a),g=e(o),h=f(void 0),v=c.startSymbol(),$=c.endSymbol(),b="<"+g+"-popup "+'title="'+v+"tt_title"+$+'" '+'content="'+v+"tt_content"+$+'" '+'placement="'+v+"tt_placement"+$+'" '+'animation="tt_animation()" '+'is-open="tt_isOpen"'+">"+"</"+g+"-popup>";return{restrict:"EA",scope:!0,link:function(e,t,n){function a(){e.tt_isOpen?d():c()}function c(){e.tt_popupDelay?y=r(g,e.tt_popupDelay):e.$apply(g)}function d(){e.$apply(function(){v()})}function g(){var n,
 a,o,i;if(e.tt_content){switch($&&r.cancel($),k.css({top:0,left:0,display:"block"}),x?(w=w||s.find("body"),w.append(k)):t.after(k),n=m.appendToBody?u.offset(t):u.position(t),a=k.prop("offsetWidth"),o=k.prop("offsetHeight"),e.tt_placement){case"mouse":var l=u.mouse();i={top:l.y,left:l.x};break;case"right":i={top:n.top+n.height/2-o/2,left:n.left+n.width};break;case"bottom":i={top:n.top+n.height,left:n.left+n.width/2-a/2};break;case"left":i={top:n.top+n.height/2-o/2,left:n.left-a};break;default:i={top:n.top-o,left:n.left+n.width/2-a/2}}i.top+="px",i.left+="px",k.css(i),e.tt_isOpen=!0}}function v(){e.tt_isOpen=!1,r.cancel(y),angular.isDefined(e.tt_animation)&&e.tt_animation()?$=r(function(){k.remove()},500):k.remove()}var $,y,w,k=i(b)(e),x=angular.isDefined(m.appendToBody)?m.appendToBody:!1;e.tt_isOpen=!1,n.$observe(o,function(t){e.tt_content=t}),n.$observe(p+"Title",function(t){e.tt_title=t}),n.$observe(p+"Placement",function(t){e.tt_placement=angular.isDefined(t)?t:m.placement}),n.$obs
 erve(p+"Animation",function(t){e.tt_animation=angular.isDefined(t)?l(t):function(){return m.animation}}),n.$observe(p+"PopupDelay",function(t){var n=parseInt(t,10);e.tt_popupDelay=isNaN(n)?m.popupDelay:n}),n.$observe(p+"Trigger",function(e){t.unbind(h.show),t.unbind(h.hide),h=f(e),h.show===h.hide?t.bind(h.show,a):(t.bind(h.show,c),t.bind(h.hide,d))}),n.$observe(p+"AppendToBody",function(t){x=angular.isDefined(t)?l(t)(e):x}),x&&e.$on("$locationChangeSuccess",function(){e.tt_isOpen&&v()}),e.$on("$destroy",function(){e.tt_isOpen?v():k.remove()})}}}}]}).directive("tooltipPopup",function(){return{restrict:"E",replace:!0,scope:{content:"@",placement:"@",animation:"&",isOpen:"&"},templateUrl:"template/tooltip/tooltip-popup.html"}}).directive("tooltip",["$tooltip",function(e){return e("tooltip","tooltip","mouseenter")}]).directive("tooltipHtmlUnsafePopup",function(){return{restrict:"E",replace:!0,scope:{content:"@",placement:"@",animation:"&",isOpen:"&"},templateUrl:"template/tooltip/toolti
 p-html-unsafe-popup.html"}}).directive("tooltipHtmlUnsafe",["$tooltip",function(e){return e("tooltipHtmlUnsafe","tooltip","mouseenter")}]),angular.module("ui.bootstrap.popover",["ui.bootstrap.tooltip"]).directive("popoverPopup",function(){return{restrict:"EA",replace:!0,scope:{title:"@",content:"@",placement:"@",animation:"&",isOpen:"&"},templateUrl:"template/popover/popover.html"}}).directive("popover",["$compile","$timeout","$parse","$window","$tooltip",function(e,t,n,a,o){return o("popover","popover","click")}]),angular.module("ui.bootstrap.progressbar",["ui.bootstrap.transition"]).constant("progressConfig",{animate:!0,autoType:!1,stackedTypes:["success","info","warning","danger"]}).controller("ProgressBarController",["$scope","$attrs","progressConfig",function(e,t,n){function a(e){return r[e]}var o=angular.isDefined(t.animate)?e.$eval(t.animate):n.animate,i=angular.isDefined(t.autoType)?e.$eval(t.autoType):n.autoType,r=angular.isDefined(t.stackedTypes)?e.$eval("["+t.stackedTypes
 +"]"):n.stackedTypes;this.makeBar=function(e,t,n){var r=angular.isObject(e)?e.value:e||0,l=angular.isObject(t)?t.value:t||0,s=angular.isObject(e)&&angular.isDefined(e.type)?e.type:i?a(n||0):null;return{from:l,to:r,type:s,animate:o}},this.addBar=function(t){e.bars.push(t),e.totalPercent+=t.to},this.clearBars=function(){e.bars=[],e.totalPercent=0},this.clearBars()}]).directive("progress",function(){return{restrict:"EA",replace:!0,controller:"ProgressBarController",scope:{value:"=percent",onFull:"&",onEmpty:"&"},templateUrl:"template/progressbar/progress.html",link:function(e,t,n,a){e.$watch("value",function(e,t){if(a.clearBars(),angular.isArray(e))for(var n=0,o=e.length;o>n;n++)a.addBar(a.makeBar(e[n],t[n],n));else a.addBar(a.makeBar(e,t))},!0),e.$watch("totalPercent",function(t){t>=100?e.onFull():0>=t&&e.onEmpty()},!0)}}}).directive("progressbar",["$transition",function(e){return{restrict:"EA",replace:!0,scope:{width:"=",old:"=",type:"=",animate:"="},templateUrl:"template/progressbar
 /bar.html",link:function(t,n){t.$watch("width",function(a){t.animate?(n.css("width",t.old+"%"),e(n,{width:a+"%"})):n.css("width",a+"%")})}}}]),angular.module("ui.bootstrap.rating",[]).constant("ratingConfig",{max:5}).directive("rating",["ratingConfig","$parse",function(e,t){return{restrict:"EA",scope:{value:"="},templateUrl:"template/rating/rating.html",replace:!0,link:function(n,a,o){var i=angular.isDefined(o.max)?n.$eval(o.max):e.max;n.range=[];for(var r=1;i>=r;r++)n.range.push(r);n.rate=function(e){n.readonly||(n.value=e)},n.enter=function(e){n.readonly||(n.val=e)},n.reset=function(){n.val=angular.copy(n.value)},n.reset(),n.$watch("value",function(e){n.val=e}),n.readonly=!1,o.readonly&&n.$parent.$watch(t(o.readonly),function(e){n.readonly=!!e})}}}]),angular.module("ui.bootstrap.tabs",[]).directive("tabs",function(){return function(){throw Error("The `tabs` directive is deprecated, please migrate to `tabset`. Instructions can be found at http://github.com/angular-ui/bootstrap/tree
 /master/CHANGELOG.md")}}).controller("TabsetController",["$scope","$element",function(e){var t=this,n=t.tabs=e.tabs=[];t.select=function(e){angular.forEach(n,function(e){e.active=!1}),e.active=!0},t.addTab=function(e){n.push(e),1==n.length&&t.select(e)},t.removeTab=function(e){var a=n.indexOf(e);if(e.active&&n.length>1){var o=a==n.length-1?a-1:a+1;t.select(n[o])}n.splice(a,1)}}]).directive("tabset",function(){return{restrict:"EA",transclude:!0,scope:{},controller:"TabsetController",templateUrl:"template/tabs/tabset.html",link:function(e,t,n){e.vertical=angular.isDefined(n.vertical)?e.$eval(n.vertical):!1,e.type=angular.isDefined(n.type)?e.$parent.$eval(n.type):"tabs"}}}).directive("tab",["$parse","$http","$templateCache","$compile",function(e){return{require:"^tabset",restrict:"EA",replace:!0,templateUrl:"template/tabs/tab.html",transclude:!0,scope:{heading:"@",onSelect:"&select"},controller:function(){},compile:function(t,n,a){return function(t,n,o,i){var r,l;t.active=!1,o.active?(
 r=e(o.active),l=r.assign,t.$parent.$watch(r,function(e){e&&t.disabled?l(t.$parent,!1):t.active=!!e})):l=r=angular.noop,t.$watch("active",function(e){l(t.$parent,e),e&&(i.select(t),t.onSelect())}),t.disabled=!1,o.disabled&&t.$parent.$watch(e(o.disabled),function(e){t.disabled=!!e}),t.select=function(){t.disabled||(t.active=!0)},i.addTab(t),t.$on("$destroy",function(){i.removeTab(t)}),t.active&&l(t.$parent,!0),a(t.$parent,function(e){var n,a=[];angular.forEach(e,function(e){e.tagName&&(e.hasAttribute("tab-heading")||e.hasAttribute("data-tab-heading")||"tab-heading"==e.tagName.toLowerCase()||"data-tab-heading"==e.tagName.toLowerCase())?n=e:a.push(e)}),n&&(t.headingElement=angular.element(n)),t.contentElement=angular.element(a)})}}}}]).directive("tabHeadingTransclude",[function(){return{restrict:"A",require:"^tab",link:function(e,t){e.$watch("headingElement",function(e){e&&(t.html(""),t.append(e))})}}}]).directive("tabContentTransclude",["$parse",function(e){return{restrict:"A",require:
 "^tabset",link:function(t,n,a){t.$watch(e(a.tabContentTransclude),function(e){n.html(""),e&&n.append(e.contentElement)})}}}]),angular.module("ui.bootstrap.timepicker",[]).filter("pad",function(){return function(e){return angular.isDefined(e)&&2>(""+e).length&&(e="0"+e),e}}).constant("timepickerConfig",{hourStep:1,minuteStep:1,showMeridian:!0,meridians:["AM","PM"],readonlyInput:!1,mousewheel:!0}).directive("timepicker",["padFilter","$parse","timepickerConfig",function(e,t,n){return{restrict:"EA",require:"ngModel",replace:!0,templateUrl:"template/timepicker/timepicker.html",scope:{model:"=ngModel"},link:function(a,o,i){function r(){var e=parseInt(a.hours,10),t=a.showMeridian?e>0&&13>e:e>=0&&24>e;return t?(a.showMeridian&&(12===e&&(e=0),a.meridian===c[1]&&(e+=12)),e):void 0}function l(){var t=u.getHours();a.showMeridian&&(t=0===t||12===t?12:t%12),a.hours="h"===$?t:e(t),a.validHours=!0;var n=u.getMinutes();a.minutes="m"===$?n:e(n),a.validMinutes=!0,a.meridian=a.showMeridian?12>u.getHour
 s()?c[0]:c[1]:"",$=!1}function s(e){var t=new Date(u.getTime()+6e4*e);t.getDate()!==u.getDate()&&t.setDate(t.getDate()-1),u.setTime(t.getTime()),a.model=new Date(u)}var u=new Date,c=n.meridians,p=n.hourStep;i.hourStep&&a.$parent.$watch(t(i.hourStep),function(e){p=parseInt(e,10)});var d=n.minuteStep;i.minuteStep&&a.$parent.$watch(t(i.minuteStep),function(e){d=parseInt(e,10)}),a.showMeridian=n.showMeridian,i.showMeridian&&a.$parent.$watch(t(i.showMeridian),function(e){if(a.showMeridian=!!e,a.model)l();else{var t=new Date(u),n=r();angular.isDefined(n)&&t.setHours(n),a.model=new Date(t)}});var f=o.find("input"),m=f.eq(0),g=f.eq(1),h=angular.isDefined(i.mousewheel)?a.$eval(i.mousewheel):n.mousewheel;if(h){var v=function(e){return e.originalEvent&&(e=e.originalEvent),e.detail||e.wheelDelta>0};m.bind("mousewheel",function(e){a.$apply(v(e)?a.incrementHours():a.decrementHours()),e.preventDefault()}),g.bind("mousewheel",function(e){a.$apply(v(e)?a.incrementMinutes():a.decrementMinutes()),e.pr
 eventDefault()})}var $=!1;a.readonlyInput=angular.isDefined(i.readonlyInput)?a.$eval(i.readonlyInput):n.readonlyInput,a.readonlyInput?(a.updateHours=angular.noop,a.updateMinutes=angular.noop):(a.updateHours=function(){var e=r();angular.isDefined(e)?($="h",null===a.model&&(a.model=new Date(u)),a.model.setHours(e)):(a.model=null,a.validHours=!1)},m.bind("blur",function(){a.validHours&&10>a.hours&&a.$apply(function(){a.hours=e(a.hours)})}),a.updateMinutes=function(){var e=parseInt(a.minutes,10);e>=0&&60>e?($="m",null===a.model&&(a.model=new Date(u)),a.model.setMinutes(e)):(a.model=null,a.validMinutes=!1)},g.bind("blur",function(){a.validMinutes&&10>a.minutes&&a.$apply(function(){a.minutes=e(a.minutes)})})),a.$watch(function(){return+a.model},function(e){!isNaN(e)&&e>0&&(u=new Date(e),l())}),a.incrementHours=function(){s(60*p)},a.decrementHours=function(){s(60*-p)},a.incrementMinutes=function(){s(d)},a.decrementMinutes=function(){s(-d)},a.toggleMeridian=function(){s(720*(12>u.getHours()
 ?1:-1))}}}}]),angular.module("ui.bootstrap.typeahead",["ui.bootstrap.position"]).factory("typeaheadParser",["$parse",function(e){var t=/^\s*(.*?)(?:\s+as\s+(.*?))?\s+for\s+(?:([\$\w][\$\w\d]*))\s+in\s+(.*)$/;
+return{parse:function(n){var a=n.match(t);if(!a)throw Error("Expected typeahead specification in form of '_modelValue_ (as _label_)? for _item_ in _collection_' but got '"+n+"'.");return{itemName:a[3],source:e(a[4]),viewMapper:e(a[2]||a[1]),modelMapper:e(a[1])}}}}]).directive("typeahead",["$compile","$parse","$q","$timeout","$document","$position","typeaheadParser",function(e,t,n,a,o,i,r){var l=[9,13,27,38,40];return{require:"ngModel",link:function(s,u,c,p){var d,f=s.$eval(c.typeaheadMinLength)||1,m=s.$eval(c.typeaheadWaitMs)||0,g=r.parse(c.typeahead),h=s.$eval(c.typeaheadEditable)!==!1,v=t(c.typeaheadLoading).assign||angular.noop,$=t(c.typeaheadOnSelect),b=angular.element("<typeahead-popup></typeahead-popup>");b.attr({matches:"matches",active:"activeIdx",select:"select(activeIdx)",query:"query",position:"position"});var y=s.$new();s.$on("$destroy",function(){y.$destroy()});var w=function(){y.matches=[],y.activeIdx=-1},k=function(e){var t={$viewValue:e};v(s,!0),n.when(g.source(y,t))
 .then(function(n){if(e===p.$viewValue){if(n.length>0){y.activeIdx=0,y.matches.length=0;for(var a=0;n.length>a;a++)t[g.itemName]=n[a],y.matches.push({label:g.viewMapper(y,t),model:n[a]});y.query=e,y.position=i.position(u),y.position.top=y.position.top+u.prop("offsetHeight")}else w();v(s,!1)}},function(){w(),v(s,!1)})};w(),y.query=void 0,p.$parsers.push(function(e){var t;return w(),d?e:(e&&e.length>=f&&(m>0?(t&&a.cancel(t),t=a(function(){k(e)},m)):k(e)),h?e:void 0)}),p.$render=function(){var e={};e[g.itemName]=d||p.$viewValue,u.val(g.viewMapper(y,e)||p.$viewValue),d=void 0},y.select=function(e){var t,n,a={};a[g.itemName]=n=d=y.matches[e].model,t=g.modelMapper(y,a),p.$setViewValue(t),p.$render(),$(y,{$item:n,$model:t,$label:g.viewMapper(y,a)}),u[0].focus()},u.bind("keydown",function(e){0!==y.matches.length&&-1!==l.indexOf(e.which)&&(e.preventDefault(),40===e.which?(y.activeIdx=(y.activeIdx+1)%y.matches.length,y.$digest()):38===e.which?(y.activeIdx=(y.activeIdx?y.activeIdx:y.matches.len
 gth)-1,y.$digest()):13===e.which||9===e.which?y.$apply(function(){y.select(y.activeIdx)}):27===e.which&&(e.stopPropagation(),w(),y.$digest()))}),o.bind("click",function(){w(),y.$digest()}),u.after(e(b)(y))}}}]).directive("typeaheadPopup",function(){return{restrict:"E",scope:{matches:"=",query:"=",active:"=",position:"=",select:"&"},replace:!0,templateUrl:"template/typeahead/typeahead.html",link:function(e){e.isOpen=function(){return e.matches.length>0},e.isActive=function(t){return e.active==t},e.selectActive=function(t){e.active=t},e.selectMatch=function(t){e.select({activeIdx:t})}}}}).filter("typeaheadHighlight",function(){function e(e){return e.replace(/([.?*+^$[\]\\(){}|-])/g,"\\$1")}return function(t,n){return n?t.replace(RegExp(e(n),"gi"),"<strong>$&</strong>"):n}});
\ No newline at end of file

Added: incubator/unomi/website/rest-api-doc/lib/angular-sanitize/js/angular-sanitize.js
URL: http://svn.apache.org/viewvc/incubator/unomi/website/rest-api-doc/lib/angular-sanitize/js/angular-sanitize.js?rev=1715397&view=auto
==============================================================================
--- incubator/unomi/website/rest-api-doc/lib/angular-sanitize/js/angular-sanitize.js (added)
+++ incubator/unomi/website/rest-api-doc/lib/angular-sanitize/js/angular-sanitize.js Fri Nov 20 17:42:33 2015
@@ -0,0 +1,14 @@
+/*
+ AngularJS v1.2.6
+ (c) 2010-2014 Google, Inc. http://angularjs.org
+ License: MIT
+*/
+(function(p,h,q){'use strict';function E(a){var e=[];s(e,h.noop).chars(a);return e.join("")}function k(a){var e={};a=a.split(",");var d;for(d=0;d<a.length;d++)e[a[d]]=!0;return e}function F(a,e){function d(a,b,d,g){b=h.lowercase(b);if(t[b])for(;f.last()&&u[f.last()];)c("",f.last());v[b]&&f.last()==b&&c("",b);(g=w[b]||!!g)||f.push(b);var l={};d.replace(G,function(a,b,e,c,d){l[b]=r(e||c||d||"")});e.start&&e.start(b,l,g)}function c(a,b){var c=0,d;if(b=h.lowercase(b))for(c=f.length-1;0<=c&&f[c]!=b;c--);
+if(0<=c){for(d=f.length-1;d>=c;d--)e.end&&e.end(f[d]);f.length=c}}var b,g,f=[],l=a;for(f.last=function(){return f[f.length-1]};a;){g=!0;if(f.last()&&x[f.last()])a=a.replace(RegExp("(.*)<\\s*\\/\\s*"+f.last()+"[^>]*>","i"),function(b,a){a=a.replace(H,"$1").replace(I,"$1");e.chars&&e.chars(r(a));return""}),c("",f.last());else{if(0===a.indexOf("\x3c!--"))b=a.indexOf("--",4),0<=b&&a.lastIndexOf("--\x3e",b)===b&&(e.comment&&e.comment(a.substring(4,b)),a=a.substring(b+3),g=!1);else if(y.test(a)){if(b=a.match(y))a=
+a.replace(b[0],""),g=!1}else if(J.test(a)){if(b=a.match(z))a=a.substring(b[0].length),b[0].replace(z,c),g=!1}else K.test(a)&&(b=a.match(A))&&(a=a.substring(b[0].length),b[0].replace(A,d),g=!1);g&&(b=a.indexOf("<"),g=0>b?a:a.substring(0,b),a=0>b?"":a.substring(b),e.chars&&e.chars(r(g)))}if(a==l)throw L("badparse",a);l=a}c()}function r(a){if(!a)return"";var e=M.exec(a);a=e[1];var d=e[3];if(e=e[2])n.innerHTML=e.replace(/</g,"&lt;"),e="textContent"in n?n.textContent:n.innerText;return a+e+d}function B(a){return a.replace(/&/g,
+"&amp;").replace(N,function(a){return"&#"+a.charCodeAt(0)+";"}).replace(/</g,"&lt;").replace(/>/g,"&gt;")}function s(a,e){var d=!1,c=h.bind(a,a.push);return{start:function(a,g,f){a=h.lowercase(a);!d&&x[a]&&(d=a);d||!0!==C[a]||(c("<"),c(a),h.forEach(g,function(d,f){var g=h.lowercase(f),k="img"===a&&"src"===g||"background"===g;!0!==O[g]||!0===D[g]&&!e(d,k)||(c(" "),c(f),c('="'),c(B(d)),c('"'))}),c(f?"/>":">"))},end:function(a){a=h.lowercase(a);d||!0!==C[a]||(c("</"),c(a),c(">"));a==d&&(d=!1)},chars:function(a){d||
+c(B(a))}}}var L=h.$$minErr("$sanitize"),A=/^<\s*([\w:-]+)((?:\s+[\w:-]+(?:\s*=\s*(?:(?:"[^"]*")|(?:'[^']*')|[^>\s]+))?)*)\s*(\/?)\s*>/,z=/^<\s*\/\s*([\w:-]+)[^>]*>/,G=/([\w:-]+)(?:\s*=\s*(?:(?:"((?:[^"])*)")|(?:'((?:[^'])*)')|([^>\s]+)))?/g,K=/^</,J=/^<\s*\//,H=/\x3c!--(.*?)--\x3e/g,y=/<!DOCTYPE([^>]*?)>/i,I=/<!\[CDATA\[(.*?)]]\x3e/g,N=/([^\#-~| |!])/g,w=k("area,br,col,hr,img,wbr");p=k("colgroup,dd,dt,li,p,tbody,td,tfoot,th,thead,tr");q=k("rp,rt");var v=h.extend({},q,p),t=h.extend({},p,k("address,article,aside,blockquote,caption,center,del,dir,div,dl,figure,figcaption,footer,h1,h2,h3,h4,h5,h6,header,hgroup,hr,ins,map,menu,nav,ol,pre,script,section,table,ul")),
+u=h.extend({},q,k("a,abbr,acronym,b,bdi,bdo,big,br,cite,code,del,dfn,em,font,i,img,ins,kbd,label,map,mark,q,ruby,rp,rt,s,samp,small,span,strike,strong,sub,sup,time,tt,u,var")),x=k("script,style"),C=h.extend({},w,t,u,v),D=k("background,cite,href,longdesc,src,usemap"),O=h.extend({},D,k("abbr,align,alt,axis,bgcolor,border,cellpadding,cellspacing,class,clear,color,cols,colspan,compact,coords,dir,face,headers,height,hreflang,hspace,ismap,lang,language,nohref,nowrap,rel,rev,rows,rowspan,rules,scope,scrolling,shape,span,start,summary,target,title,type,valign,value,vspace,width")),
+n=document.createElement("pre"),M=/^(\s*)([\s\S]*?)(\s*)$/;h.module("ngSanitize",[]).provider("$sanitize",function(){this.$get=["$$sanitizeUri",function(a){return function(e){var d=[];F(e,s(d,function(c,b){return!/^unsafe/.test(a(c,b))}));return d.join("")}}]});h.module("ngSanitize").filter("linky",["$sanitize",function(a){var e=/((ftp|https?):\/\/|(mailto:)?[A-Za-z0-9._%+-]+@)\S*[^\s.;,(){}<>]/,d=/^mailto:/;return function(c,b){function g(a){a&&m.push(E(a))}function f(a,c){m.push("<a ");h.isDefined(b)&&
+(m.push('target="'),m.push(b),m.push('" '));m.push('href="');m.push(a);m.push('">');g(c);m.push("</a>")}if(!c)return c;for(var l,k=c,m=[],n,p;l=k.match(e);)n=l[0],l[2]==l[3]&&(n="mailto:"+n),p=l.index,g(k.substr(0,p)),f(n,l[0].replace(d,"")),k=k.substring(p+l[0].length);g(k);return a(m.join(""))}}])})(window,window.angular);
+//# sourceMappingURL=angular-sanitize.min.js.map
\ No newline at end of file

Added: incubator/unomi/website/rest-api-doc/lib/angular-ui/css/angular-ui.css
URL: http://svn.apache.org/viewvc/incubator/unomi/website/rest-api-doc/lib/angular-ui/css/angular-ui.css?rev=1715397&view=auto
==============================================================================
--- incubator/unomi/website/rest-api-doc/lib/angular-ui/css/angular-ui.css (added)
+++ incubator/unomi/website/rest-api-doc/lib/angular-ui/css/angular-ui.css Fri Nov 20 17:42:33 2015
@@ -0,0 +1 @@
+.ui-resetwrap{position:relative;display:inline-block}.ui-reset{position:absolute;top:0;right:0;z-index:2;display:none;height:100%;cursor:pointer}.ui-resetwrap:hover .ui-reset{display:block}.ui-currency-pos{color:green}.ui-currency-neg{color:red}.ui-currency-zero{color:blue}.ui-currency-pos.ui-bignum,.ui-currency-neg.ui-smallnum{font-size:110%}.ui-match{background:yellow}
\ No newline at end of file