From 0a97b588d0fbb677614961a7b77aed77aa160014 Mon Sep 17 00:00:00 2001 From: Bernhard Posselt Date: Thu, 6 Nov 2014 08:54:46 +0100 Subject: update dev deps and angular --- js/package.json | 2 +- js/vendor/angular-mocks/.bower.json | 11 +- js/vendor/angular-mocks/README.md | 23 +- js/vendor/angular-mocks/angular-mocks.js | 66 +- js/vendor/angular-mocks/bower.json | 5 +- js/vendor/angular-mocks/package.json | 2 +- js/vendor/angular-route/.bower.json | 11 +- js/vendor/angular-route/README.md | 31 +- js/vendor/angular-route/angular-route.js | 16 +- js/vendor/angular-route/angular-route.min.js | 2 +- js/vendor/angular-route/angular-route.min.js.map | 2 +- js/vendor/angular-route/bower.json | 5 +- js/vendor/angular-route/package.json | 2 +- js/vendor/angular-sanitize/.bower.json | 11 +- js/vendor/angular-sanitize/README.md | 31 +- js/vendor/angular-sanitize/angular-sanitize.js | 157 ++-- js/vendor/angular-sanitize/angular-sanitize.min.js | 21 +- .../angular-sanitize/angular-sanitize.min.js.map | 6 +- js/vendor/angular-sanitize/bower.json | 5 +- js/vendor/angular-sanitize/package.json | 2 +- js/vendor/angular/.bower.json | 9 +- js/vendor/angular/README.md | 27 +- js/vendor/angular/angular.js | 991 +++++++++++---------- js/vendor/angular/angular.min.js | 484 +++++----- js/vendor/angular/angular.min.js.gzip | Bin 45101 -> 45308 bytes js/vendor/angular/angular.min.js.map | 4 +- js/vendor/angular/bower.json | 3 +- js/vendor/angular/package.json | 2 +- 28 files changed, 1047 insertions(+), 884 deletions(-) (limited to 'js') diff --git a/js/package.json b/js/package.json index 029d2901a..13bdcb0e6 100644 --- a/js/package.json +++ b/js/package.json @@ -42,7 +42,7 @@ "karma-chrome-launcher": "^0.1.5", "karma-coverage": "^0.2.6", "karma-firefox-launcher": "^0.1.3", - "karma-jasmine": "^0.1.5", + "karma-jasmine": "^0.2.3", "karma-phantomjs-launcher": "^0.1.4" }, "dependencies": {} diff --git a/js/vendor/angular-mocks/.bower.json b/js/vendor/angular-mocks/.bower.json index e5c2af823..492732614 100644 --- a/js/vendor/angular-mocks/.bower.json +++ b/js/vendor/angular-mocks/.bower.json @@ -1,16 +1,17 @@ { "name": "angular-mocks", - "version": "1.3.0", + "version": "1.3.1", "main": "./angular-mocks.js", + "ignore": [], "dependencies": { - "angular": "1.3.0" + "angular": "1.3.1" }, "homepage": "https://github.com/angular/bower-angular-mocks", - "_release": "1.3.0", + "_release": "1.3.1", "_resolution": { "type": "version", - "tag": "v1.3.0", - "commit": "4c8d621ebb66ccb90563767d3f4282e9682a84b7" + "tag": "v1.3.1", + "commit": "301be5a5de82a83b5c436b9a2905a99b025a7890" }, "_source": "git://github.com/angular/bower-angular-mocks.git", "_target": "~1.3.*", diff --git a/js/vendor/angular-mocks/README.md b/js/vendor/angular-mocks/README.md index 3448d2849..1604ef880 100644 --- a/js/vendor/angular-mocks/README.md +++ b/js/vendor/angular-mocks/README.md @@ -1,21 +1,36 @@ -# bower-angular-mocks +# packaged angular-mocks -This repo is for distribution on `bower`. The source for this module is in the +This repo is for distribution on `npm` and `bower`. The source for this module is in the [main AngularJS repo](https://github.com/angular/angular.js/tree/master/src/ngMock). Please file issues and pull requests against that repo. ## Install -Install with `bower`: +You can install this package either with `npm` or with `bower`. + +### npm + +```shell +npm install angular-mocks +``` + +The mocks are then available at `node_modules/angular-mocks/angular-mocks.js`. + +Note that this package is not in CommonJS format, so doing `require('angular-mocks')` will +return `undefined`. + +### bower ```shell bower install angular-mocks ``` +The mocks are then available at `bower_components/angular-mocks/angular-mocks.js`. + ## Documentation Documentation is available on the -[AngularJS docs site](http://docs.angularjs.org/guide/dev_guide.unit-testing). +[AngularJS docs site](https://docs.angularjs.org/guide/unit-testing). ## License diff --git a/js/vendor/angular-mocks/angular-mocks.js b/js/vendor/angular-mocks/angular-mocks.js index ecbb22bcf..2f5cb5f9b 100644 --- a/js/vendor/angular-mocks/angular-mocks.js +++ b/js/vendor/angular-mocks/angular-mocks.js @@ -1,5 +1,5 @@ /** - * @license AngularJS v1.3.0 + * @license AngularJS v1.3.1 * (c) 2010-2014 Google, Inc. http://angularjs.org * License: MIT */ @@ -74,7 +74,7 @@ angular.mock.$Browser = function() { self.defer = function(fn, delay) { delay = delay || 0; self.deferredFns.push({time:(self.defer.now + delay), fn:fn, id: self.deferredNextId}); - self.deferredFns.sort(function(a,b){ return a.time - b.time;}); + self.deferredFns.sort(function(a, b) { return a.time - b.time;}); return self.deferredNextId++; }; @@ -142,7 +142,7 @@ angular.mock.$Browser.prototype = { * run all fns in pollFns */ poll: function poll() { - angular.forEach(this.pollFns, function(pollFn){ + angular.forEach(this.pollFns, function(pollFn) { pollFn(); }); }, @@ -258,7 +258,7 @@ angular.mock.$ExceptionHandlerProvider = function() { * {@link ngMock.$log#reset reset()} */ this.mode = function(mode) { - switch(mode) { + switch (mode) { case 'rethrow': handler = function(e) { throw e; @@ -316,7 +316,7 @@ angular.mock.$LogProvider = function() { } }; - this.$get = function () { + this.$get = function() { var $log = { log: function() { $log.log.logs.push(concat([], arguments, 0)); }, warn: function() { $log.warn.logs.push(concat([], arguments, 0)); }, @@ -336,7 +336,7 @@ angular.mock.$LogProvider = function() { * @description * Reset all of the logging arrays to empty. */ - $log.reset = function () { + $log.reset = function() { /** * @ngdoc property * @name $log#log.logs @@ -421,7 +421,7 @@ angular.mock.$LogProvider = function() { var errors = []; angular.forEach(['error', 'warn', 'info', 'log', 'debug'], function(logLevel) { angular.forEach($log[logLevel].logs, function(log) { - angular.forEach(log, function (logItem) { + angular.forEach(log, function(logItem) { errors.push('MOCK $log (' + logLevel + '): ' + String(logItem) + '\n' + (logItem.stack || '')); }); @@ -504,7 +504,7 @@ angular.mock.$IntervalProvider = function() { id: nextRepeatId, deferred: deferred }); - repeatFns.sort(function(a,b){ return a.nextTime - b.nextTime;}); + repeatFns.sort(function(a, b) { return a.nextTime - b.nextTime;}); nextRepeatId++; return promise; @@ -520,7 +520,7 @@ angular.mock.$IntervalProvider = function() { * @returns {boolean} Returns `true` if the task was successfully cancelled. */ $interval.cancel = function(promise) { - if(!promise) return false; + if (!promise) return false; var fnIndex; angular.forEach(repeatFns, function(fn, index) { @@ -553,7 +553,7 @@ angular.mock.$IntervalProvider = function() { var task = repeatFns[0]; task.fn(); task.nextTime += task.delay; - repeatFns.sort(function(a,b){ return a.nextTime - b.nextTime;}); + repeatFns.sort(function(a, b) { return a.nextTime - b.nextTime;}); } return millis; }; @@ -601,7 +601,7 @@ function padNumber(num, digits, trim) { num = -num; } num = '' + num; - while(num.length < digits) num = '0' + num; + while (num.length < digits) num = '0' + num; if (trim) num = num.substr(num.length - digits); return neg + num; @@ -645,7 +645,7 @@ function padNumber(num, digits, trim) { * ``` * */ -angular.mock.TzDate = function (offset, timestamp) { +angular.mock.TzDate = function(offset, timestamp) { var self = new Date(0); if (angular.isString(timestamp)) { var tsStr = timestamp; @@ -788,20 +788,20 @@ angular.mock.animate = angular.module('ngAnimateMock', ['ng']) $provide.decorator('$animate', ['$delegate', '$$asyncCallback', '$timeout', '$browser', function($delegate, $$asyncCallback, $timeout, $browser) { var animate = { - queue : [], - cancel : $delegate.cancel, - enabled : $delegate.enabled, - triggerCallbackEvents : function() { + queue: [], + cancel: $delegate.cancel, + enabled: $delegate.enabled, + triggerCallbackEvents: function() { $$asyncCallback.flush(); }, - triggerCallbackPromise : function() { + triggerCallbackPromise: function() { $timeout.flush(0); }, - triggerCallbacks : function() { + triggerCallbacks: function() { this.triggerCallbackEvents(); this.triggerCallbackPromise(); }, - triggerReflow : function() { + triggerReflow: function() { angular.forEach(reflowQueue, function(fn) { fn(); }); @@ -813,10 +813,10 @@ angular.mock.animate = angular.module('ngAnimateMock', ['ng']) ['animate','enter','leave','move','addClass','removeClass','setClass'], function(method) { animate[method] = function() { animate.queue.push({ - event : method, - element : arguments[0], - options : arguments[arguments.length-1], - args : arguments + event: method, + element: arguments[0], + options: arguments[arguments.length-1], + args: arguments }); return $delegate[method].apply($delegate, arguments); }; @@ -883,13 +883,13 @@ angular.mock.dump = function(object) { function serializeScope(scope, offset) { offset = offset || ' '; var log = [offset + 'Scope(' + scope.$id + '): {']; - for ( var key in scope ) { + for (var key in scope) { if (Object.prototype.hasOwnProperty.call(scope, key) && !key.match(/^(\$|this)/)) { log.push(' ' + key + ': ' + angular.toJson(scope[key])); } } var child = scope.$$childHead; - while(child) { + while (child) { log.push(serializeScope(child, offset + ' ')); child = child.$$nextSibling; } @@ -1386,7 +1386,7 @@ function createHttpBackendMock($rootScope, $delegate, $browser) { $httpBackend.expect = function(method, url, data, headers) { var expectation = new MockHttpExpectation(method, url, data, headers), chain = { - respond: function (status, data, headers, statusText) { + respond: function(status, data, headers, statusText) { expectation.response = createResponse(status, data, headers, statusText); return chain; } @@ -1636,7 +1636,9 @@ function MockHttpExpectation(method, url, data, headers) { if (angular.isUndefined(data)) return true; if (data && angular.isFunction(data.test)) return data.test(d); if (data && angular.isFunction(data)) return data(d); - if (data && !angular.isString(data)) return angular.equals(data, angular.fromJson(d)); + if (data && !angular.isString(data)) { + return angular.equals(angular.fromJson(angular.toJson(data)), angular.fromJson(d)); + } return data == d; }; @@ -1709,7 +1711,7 @@ function MockXhr() { * that adds a "flush" and "verifyNoPendingTasks" methods. */ -angular.mock.$TimeoutDecorator = ['$delegate', '$browser', function ($delegate, $browser) { +angular.mock.$TimeoutDecorator = ['$delegate', '$browser', function($delegate, $browser) { /** * @ngdoc method @@ -1763,12 +1765,12 @@ angular.mock.$RAFDecorator = ['$delegate', function($delegate) { rafFn.supported = $delegate.supported; rafFn.flush = function() { - if(queue.length === 0) { + if (queue.length === 0) { throw new Error('No rAF callbacks present'); } var length = queue.length; - for(var i=0;i` to your `index.html`: + +```html + +``` + +Then add `ngRoute` as a dependency for your app: + +```javascript +angular.module('myApp', ['ngRoute']); +``` + +Note that this package is not in CommonJS format, so doing `require('angular-route')` will +return `undefined`. + +### bower ```shell bower install angular-route @@ -18,7 +41,7 @@ Add a ` ``` -And add `ngRoute` as a dependency for your app: +Then add `ngRoute` as a dependency for your app: ```javascript angular.module('myApp', ['ngRoute']); diff --git a/js/vendor/angular-route/angular-route.js b/js/vendor/angular-route/angular-route.js index 1adbc961d..edd7d6e77 100644 --- a/js/vendor/angular-route/angular-route.js +++ b/js/vendor/angular-route/angular-route.js @@ -1,5 +1,5 @@ /** - * @license AngularJS v1.3.0 + * @license AngularJS v1.3.1 * (c) 2010-2014 Google, Inc. http://angularjs.org * License: MIT */ @@ -39,7 +39,7 @@ var ngRouteModule = angular.module('ngRoute', ['ng']). * ## Dependencies * Requires the {@link ngRoute `ngRoute`} module to be installed. */ -function $RouteProvider(){ +function $RouteProvider() { function inherit(parent, extra) { return angular.extend(new (angular.extend(function() {}, {prototype:parent}))(), extra); } @@ -188,7 +188,7 @@ function $RouteProvider(){ path = path .replace(/([().])/g, '\\$1') - .replace(/(\/)?:(\w+)([\?\*])?/g, function(_, slash, key, option){ + .replace(/(\/)?:(\w+)([\?\*])?/g, function(_, slash, key, option) { var optional = option === '?' ? option : null; var star = option === '*' ? option : null; keys.push({ name: key, optional: !!optional }); @@ -870,7 +870,7 @@ ngRouteModule.directive('ngView', ngViewFillContentFactory); * Emitted every time the ngView content is reloaded. */ ngViewFactory.$inject = ['$route', '$anchorScroll', '$animate']; -function ngViewFactory( $route, $anchorScroll, $animate) { +function ngViewFactory($route, $anchorScroll, $animate) { return { restrict: 'ECA', terminal: true, @@ -887,16 +887,16 @@ function ngViewFactory( $route, $anchorScroll, $animate) { update(); function cleanupLastView() { - if(previousLeaveAnimation) { + if (previousLeaveAnimation) { $animate.cancel(previousLeaveAnimation); previousLeaveAnimation = null; } - if(currentScope) { + if (currentScope) { currentScope.$destroy(); currentScope = null; } - if(currentElement) { + if (currentElement) { previousLeaveAnimation = $animate.leave(currentElement); previousLeaveAnimation.then(function() { previousLeaveAnimation = null; @@ -920,7 +920,7 @@ function ngViewFactory( $route, $anchorScroll, $animate) { // function is called before linking the content, which would apply child // directives to non existing elements. var clone = $transclude(newScope, function(clone) { - $animate.enter(clone, null, currentElement || $element).then(function onNgViewEnter () { + $animate.enter(clone, null, currentElement || $element).then(function onNgViewEnter() { if (angular.isDefined(autoScrollExp) && (!autoScrollExp || scope.$eval(autoScrollExp))) { $anchorScroll(); diff --git a/js/vendor/angular-route/angular-route.min.js b/js/vendor/angular-route/angular-route.min.js index bada89b00..b6e007fc3 100644 --- a/js/vendor/angular-route/angular-route.min.js +++ b/js/vendor/angular-route/angular-route.min.js @@ -1,5 +1,5 @@ /* - AngularJS v1.3.0 + AngularJS v1.3.1 (c) 2010-2014 Google, Inc. http://angularjs.org License: MIT */ diff --git a/js/vendor/angular-route/angular-route.min.js.map b/js/vendor/angular-route/angular-route.min.js.map index 4472060ea..f728728ca 100644 --- a/js/vendor/angular-route/angular-route.min.js.map +++ b/js/vendor/angular-route/angular-route.min.js.map @@ -2,7 +2,7 @@ "version":3, "file":"angular-route.min.js", "lineCount":14, -"mappings":"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", +"mappings":"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", "sources":["angular-route.js"], "names":["window","angular","undefined","ngViewFactory","$route","$anchorScroll","$animate","restrict","terminal","priority","transclude","link","scope","$element","attr","ctrl","$transclude","cleanupLastView","previousLeaveAnimation","cancel","currentScope","$destroy","currentElement","leave","then","update","locals","current","isDefined","$template","newScope","$new","clone","enter","onNgViewEnter","autoScrollExp","$eval","$emit","onloadExp","autoscroll","onload","$on","ngViewFillContentFactory","$compile","$controller","html","contents","controller","$scope","controllerAs","data","children","ngRouteModule","module","provider","$RouteProvider","inherit","parent","extra","extend","prototype","pathRegExp","path","opts","insensitive","caseInsensitiveMatch","ret","originalPath","regexp","keys","replace","_","slash","key","option","optional","star","push","name","RegExp","routes","when","this.when","route","reloadOnSearch","redirectPath","length","substr","redirectTo","otherwise","this.otherwise","params","$get","$rootScope","$location","$routeParams","$q","$injector","$templateRequest","$sce","prepareRoute","$locationEvent","lastRoute","preparedRouteIsUpdateOnly","preparedRoute","parseRoute","$$route","equals","pathParams","forceReload","$broadcast","defaultPrevented","preventDefault","commitRoute","nextRoute","copy","isString","interpolate","search","url","resolve","template","templateUrl","forEach","value","get","invoke","isFunction","getTrustedResourceUrl","loadedTemplateUrl","all","error","match","m","exec","on","i","len","val","string","result","split","segment","segmentMatch","join","reload","$evalAsync","updateParams","newParams","searchParams","self","Object","$routeMinErr","$$minErr","$RouteParamsProvider","this.$get","directive","$inject"] } diff --git a/js/vendor/angular-route/bower.json b/js/vendor/angular-route/bower.json index 80dab761f..72b56cb75 100644 --- a/js/vendor/angular-route/bower.json +++ b/js/vendor/angular-route/bower.json @@ -1,8 +1,9 @@ { "name": "angular-route", - "version": "1.3.0", + "version": "1.3.1", "main": "./angular-route.js", + "ignore": [], "dependencies": { - "angular": "1.3.0" + "angular": "1.3.1" } } diff --git a/js/vendor/angular-route/package.json b/js/vendor/angular-route/package.json index 34e170187..ea9ed53a4 100644 --- a/js/vendor/angular-route/package.json +++ b/js/vendor/angular-route/package.json @@ -1,6 +1,6 @@ { "name": "angular-route", - "version": "1.3.0", + "version": "1.3.1", "description": "AngularJS router module", "main": "angular-route.js", "scripts": { diff --git a/js/vendor/angular-sanitize/.bower.json b/js/vendor/angular-sanitize/.bower.json index 7cf8f43eb..71ce94f95 100644 --- a/js/vendor/angular-sanitize/.bower.json +++ b/js/vendor/angular-sanitize/.bower.json @@ -1,16 +1,17 @@ { "name": "angular-sanitize", - "version": "1.3.0", + "version": "1.3.1", "main": "./angular-sanitize.js", + "ignore": [], "dependencies": { - "angular": "1.3.0" + "angular": "1.3.1" }, "homepage": "https://github.com/angular/bower-angular-sanitize", - "_release": "1.3.0", + "_release": "1.3.1", "_resolution": { "type": "version", - "tag": "v1.3.0", - "commit": "39f44a7ea3c2c75459fe86b1d80c02fa6970503d" + "tag": "v1.3.1", + "commit": "5c3f56dd650f86a96c5f0f749d5ee44d69ded449" }, "_source": "git://github.com/angular/bower-angular-sanitize.git", "_target": "~1.3.*", diff --git a/js/vendor/angular-sanitize/README.md b/js/vendor/angular-sanitize/README.md index 585a235ed..6bc0a3013 100644 --- a/js/vendor/angular-sanitize/README.md +++ b/js/vendor/angular-sanitize/README.md @@ -1,12 +1,35 @@ -# bower-angular-sanitize +# packaged angular-sanitize -This repo is for distribution on `bower`. The source for this module is in the +This repo is for distribution on `npm` and `bower`. The source for this module is in the [main AngularJS repo](https://github.com/angular/angular.js/tree/master/src/ngSanitize). Please file issues and pull requests against that repo. ## Install -Install with `bower`: +You can install this package either with `npm` or with `bower`. + +### npm + +```shell +npm install angular-sanitize +``` + +Add a ` +``` + +Then add `ngSanitize` as a dependency for your app: + +```javascript +angular.module('myApp', ['ngSanitize']); +``` + +Note that this package is not in CommonJS format, so doing `require('angular-sanitize')` will +return `undefined`. + +### bower ```shell bower install angular-sanitize @@ -18,7 +41,7 @@ Add a ` ``` -And add `ngSanitize` as a dependency for your app: +Then add `ngSanitize` as a dependency for your app: ```javascript angular.module('myApp', ['ngSanitize']); diff --git a/js/vendor/angular-sanitize/angular-sanitize.js b/js/vendor/angular-sanitize/angular-sanitize.js index 96afab556..807aba5a4 100644 --- a/js/vendor/angular-sanitize/angular-sanitize.js +++ b/js/vendor/angular-sanitize/angular-sanitize.js @@ -1,5 +1,5 @@ /** - * @license AngularJS v1.3.0 + * @license AngularJS v1.3.1 * (c) 2010-2014 Google, Inc. http://angularjs.org * License: MIT */ @@ -45,16 +45,16 @@ var $sanitizeMinErr = angular.$$minErr('$sanitize'); * @kind function * * @description - * The input is sanitized by parsing the html into tokens. All safe tokens (from a whitelist) are + * The input is sanitized by parsing the HTML into tokens. All safe tokens (from a whitelist) are * then serialized back to properly escaped html string. This means that no unsafe input can make * it into the returned string, however, since our parser is more strict than a typical browser * parser, it's possible that some obscure input, which would be recognized as valid HTML by a - * browser, won't make it through the sanitizer. + * browser, won't make it through the sanitizer. The input may also contain SVG markup. * The whitelist is configured using the functions `aHrefSanitizationWhitelist` and * `imgSrcSanitizationWhitelist` of {@link ng.$compileProvider `$compileProvider`}. * - * @param {string} html Html input. - * @returns {string} Sanitized html. + * @param {string} html HTML input. + * @returns {string} Sanitized HTML. * * @example @@ -198,6 +198,12 @@ var inlineElements = angular.extend({}, optionalEndTagInlineElements, makeMap("a "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")); +// SVG Elements +// https://wiki.whatwg.org/wiki/Sanitization_rules#svg_Elements +var svgElements = makeMap("animate,animateColor,animateMotion,animateTransform,circle,defs," + + "desc,ellipse,font-face,font-face-name,font-face-src,g,glyph,hkern,image,linearGradient," + + "line,marker,metadata,missing-glyph,mpath,path,polygon,polyline,radialGradient,rect,set," + + "stop,svg,switch,text,title,tspan,use"); // Special Elements (can contain anything) var specialElements = makeMap("script,style"); @@ -206,16 +212,41 @@ var validElements = angular.extend({}, voidElements, blockElements, inlineElements, - optionalEndTagElements); + optionalEndTagElements, + svgElements); //Attributes that have href and hence need to be sanitized -var uriAttrs = makeMap("background,cite,href,longdesc,src,usemap"); -var validAttrs = angular.extend({}, uriAttrs, makeMap( - 'abbr,align,alt,axis,bgcolor,border,cellpadding,cellspacing,class,clear,'+ +var uriAttrs = makeMap("background,cite,href,longdesc,src,usemap,xlink:href"); + +var htmlAttrs = makeMap('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,size,span,start,summary,target,title,type,'+ - 'valign,value,vspace,width')); + 'valign,value,vspace,width'); + +// SVG attributes (without "id" and "name" attributes) +// https://wiki.whatwg.org/wiki/Sanitization_rules#svg_Attributes +var svgAttrs = makeMap('accent-height,accumulate,additive,alphabetic,arabic-form,ascent,'+ + 'attributeName,attributeType,baseProfile,bbox,begin,by,calcMode,cap-height,class,color,'+ + 'color-rendering,content,cx,cy,d,dx,dy,descent,display,dur,end,fill,fill-rule,font-family,'+ + 'font-size,font-stretch,font-style,font-variant,font-weight,from,fx,fy,g1,g2,glyph-name,'+ + 'gradientUnits,hanging,height,horiz-adv-x,horiz-origin-x,ideographic,k,keyPoints,'+ + 'keySplines,keyTimes,lang,marker-end,marker-mid,marker-start,markerHeight,markerUnits,'+ + 'markerWidth,mathematical,max,min,offset,opacity,orient,origin,overline-position,'+ + 'overline-thickness,panose-1,path,pathLength,points,preserveAspectRatio,r,refX,refY,'+ + 'repeatCount,repeatDur,requiredExtensions,requiredFeatures,restart,rotate,rx,ry,slope,stemh,'+ + 'stemv,stop-color,stop-opacity,strikethrough-position,strikethrough-thickness,stroke,'+ + 'stroke-dasharray,stroke-dashoffset,stroke-linecap,stroke-linejoin,stroke-miterlimit,'+ + 'stroke-opacity,stroke-width,systemLanguage,target,text-anchor,to,transform,type,u1,u2,'+ + 'underline-position,underline-thickness,unicode,unicode-range,units-per-em,values,version,'+ + 'viewBox,visibility,width,widths,x,x-height,x1,x2,xlink:actuate,xlink:arcrole,xlink:role,'+ + 'xlink:show,xlink:title,xlink:type,xml:base,xml:lang,xml:space,xmlns,xmlns:xlink,y,y1,y2,'+ + 'zoomAndPan'); + +var validAttrs = angular.extend({}, + uriAttrs, + svgAttrs, + htmlAttrs); function makeMap(str) { var obj = {}, items = str.split(','), i; @@ -236,7 +267,7 @@ function makeMap(str) { * @param {string} html string * @param {object} handler */ -function htmlParser( html, handler ) { +function htmlParser(html, handler) { if (typeof html !== 'string') { if (html === null || typeof html === 'undefined') { html = ''; @@ -247,50 +278,50 @@ function htmlParser( html, handler ) { var index, chars, match, stack = [], last = html, text; stack.last = function() { return stack[ stack.length - 1 ]; }; - while ( html ) { + while (html) { text = ''; chars = true; // Make sure we're not in a script or style element - if ( !stack.last() || !specialElements[ stack.last() ] ) { + if (!stack.last() || !specialElements[ stack.last() ]) { // Comment - if ( html.indexOf("", index) === index) { - if (handler.comment) handler.comment( html.substring( 4, index ) ); - html = html.substring( index + 3 ); + if (index >= 0 && html.lastIndexOf("-->", index) === index) { + if (handler.comment) handler.comment(html.substring(4, index)); + html = html.substring(index + 3); chars = false; } // DOCTYPE - } else if ( DOCTYPE_REGEXP.test(html) ) { - match = html.match( DOCTYPE_REGEXP ); + } else if (DOCTYPE_REGEXP.test(html)) { + match = html.match(DOCTYPE_REGEXP); - if ( match ) { - html = html.replace( match[0], ''); + if (match) { + html = html.replace(match[0], ''); chars = false; } // end tag - } else if ( BEGING_END_TAGE_REGEXP.test(html) ) { - match = html.match( END_TAG_REGEXP ); + } else if (BEGING_END_TAGE_REGEXP.test(html)) { + match = html.match(END_TAG_REGEXP); - if ( match ) { - html = html.substring( match[0].length ); - match[0].replace( END_TAG_REGEXP, parseEndTag ); + if (match) { + html = html.substring(match[0].length); + match[0].replace(END_TAG_REGEXP, parseEndTag); chars = false; } // start tag - } else if ( BEGIN_TAG_REGEXP.test(html) ) { - match = html.match( START_TAG_REGEXP ); + } else if (BEGIN_TAG_REGEXP.test(html)) { + match = html.match(START_TAG_REGEXP); - if ( match ) { + if (match) { // We only have a valid start-tag if there is a '>'. - if ( match[4] ) { - html = html.substring( match[0].length ); - match[0].replace( START_TAG_REGEXP, parseStartTag ); + if (match[4]) { + html = html.substring(match[0].length); + match[0].replace(START_TAG_REGEXP, parseStartTag); } chars = false; } else { @@ -300,29 +331,29 @@ function htmlParser( html, handler ) { } } - if ( chars ) { + if (chars) { index = html.indexOf("<"); - text += index < 0 ? html : html.substring( 0, index ); - html = index < 0 ? "" : html.substring( index ); + text += index < 0 ? html : html.substring(0, index); + html = index < 0 ? "" : html.substring(index); - if (handler.chars) handler.chars( decodeEntities(text) ); + if (handler.chars) handler.chars(decodeEntities(text)); } } else { html = html.replace(new RegExp("(.*)<\\s*\\/\\s*" + stack.last() + "[^>]*>", 'i'), - function(all, text){ + function(all, text) { text = text.replace(COMMENT_REGEXP, "$1").replace(CDATA_REGEXP, "$1"); - if (handler.chars) handler.chars( decodeEntities(text) ); + if (handler.chars) handler.chars(decodeEntities(text)); return ""; }); - parseEndTag( "", stack.last() ); + parseEndTag("", stack.last()); } - if ( html == last ) { + if (html == last) { throw $sanitizeMinErr('badparse', "The sanitizer was unable to parse the following block " + "of html: {0}", html); } @@ -332,22 +363,22 @@ function htmlParser( html, handler ) { // Clean up any remaining tags parseEndTag(); - function parseStartTag( tag, tagName, rest, unary ) { + function parseStartTag(tag, tagName, rest, unary) { tagName = angular.lowercase(tagName); - if ( blockElements[ tagName ] ) { - while ( stack.last() && inlineElements[ stack.last() ] ) { - parseEndTag( "", stack.last() ); + if (blockElements[ tagName ]) { + while (stack.last() && inlineElements[ stack.last() ]) { + parseEndTag("", stack.last()); } } - if ( optionalEndTagElements[ tagName ] && stack.last() == tagName ) { - parseEndTag( "", tagName ); + if (optionalEndTagElements[ tagName ] && stack.last() == tagName) { + parseEndTag("", tagName); } unary = voidElements[ tagName ] || !!unary; - if ( !unary ) - stack.push( tagName ); + if (!unary) + stack.push(tagName); var attrs = {}; @@ -360,22 +391,22 @@ function htmlParser( html, handler ) { attrs[name] = decodeEntities(value); }); - if (handler.start) handler.start( tagName, attrs, unary ); + if (handler.start) handler.start(tagName, attrs, unary); } - function parseEndTag( tag, tagName ) { + function parseEndTag(tag, tagName) { var pos = 0, i; tagName = angular.lowercase(tagName); - if ( tagName ) + if (tagName) // Find the closest opened tag of the same type - for ( pos = stack.length - 1; pos >= 0; pos-- ) - if ( stack[ pos ] == tagName ) + for (pos = stack.length - 1; pos >= 0; pos--) + if (stack[ pos ] == tagName) break; - if ( pos >= 0 ) { + if (pos >= 0) { // Close all the open elements, up the stack - for ( i = stack.length - 1; i >= pos; i-- ) - if (handler.end) handler.end( stack[ i ] ); + for (i = stack.length - 1; i >= pos; i--) + if (handler.end) handler.end(stack[ i ]); // Remove the open elements from the stack stack.length = pos; @@ -421,12 +452,12 @@ function decodeEntities(value) { function encodeEntities(value) { return value. replace(/&/g, '&'). - replace(SURROGATE_PAIR_REGEXP, function (value) { + replace(SURROGATE_PAIR_REGEXP, function(value) { var hi = value.charCodeAt(0); var low = value.charCodeAt(1); return '&#' + (((hi - 0xD800) * 0x400) + (low - 0xDC00) + 0x10000) + ';'; }). - replace(NON_ALPHANUMERIC_REGEXP, function(value){ + replace(NON_ALPHANUMERIC_REGEXP, function(value) { return '&#' + value.charCodeAt(0) + ';'; }). replace(/' : '>'); } }, - end: function(tag){ + end: function(tag) { tag = angular.lowercase(tag); if (!ignore && validElements[tag] === true) { out('=c;e--)d.end&&d.end(f[e]);f.length=c}}"string"!==typeof a&&(a=null===a||"undefined"===typeof a?"":""+a);var b,l,f=[],n=a,h;for(f.last=function(){return f[f.length-1]};a;){h="";l=!0;if(f.last()&&y[f.last()])a=a.replace(new RegExp("(.*)<\\s*\\/\\s*"+f.last()+"[^>]*>","i"),function(a,b){b=b.replace(I,"$1").replace(J,"$1");d.chars&&d.chars(s(b));return""}),e("",f.last());else{if(0===a.indexOf("\x3c!--"))b=a.indexOf("--",4),0<=b&&a.lastIndexOf("--\x3e",b)===b&&(d.comment&&d.comment(a.substring(4, -b)),a=a.substring(b+3),l=!1);else if(z.test(a)){if(b=a.match(z))a=a.replace(b[0],""),l=!1}else if(K.test(a)){if(b=a.match(A))a=a.substring(b[0].length),b[0].replace(A,e),l=!1}else L.test(a)&&((b=a.match(B))?(b[4]&&(a=a.substring(b[0].length),b[0].replace(B,c)),l=!1):(h+="<",a=a.substring(1)));l&&(b=a.indexOf("<"),h+=0>b?a:a.substring(0,b),a=0>b?"":a.substring(b),d.chars&&d.chars(s(h)))}if(a==n)throw M("badparse",a);n=a}e()}function s(a){if(!a)return"";var d=N.exec(a);a=d[1];var c=d[3];if(d=d[2])p.innerHTML= -d.replace(//g,">")}function t(a,d){var c=!1,e=g.bind(a,a.push);return{start:function(a,l,f){a=g.lowercase(a);!c&&y[a]&&(c=a);c||!0!==D[a]||(e("<"),e(a),g.forEach(l,function(c,f){var k= -g.lowercase(f),l="img"===a&&"src"===k||"background"===k;!0!==Q[k]||!0===E[k]&&!d(c,l)||(e(" "),e(f),e('="'),e(C(c)),e('"'))}),e(f?"/>":">"))},end:function(a){a=g.lowercase(a);c||!0!==D[a]||(e(""));a==c&&(c=!1)},chars:function(a){c||e(C(a))}}}var M=g.$$minErr("$sanitize"),B=/^<((?:[a-zA-Z])[\w:-]*)((?:\s+[\w:-]+(?:\s*=\s*(?:(?:"[^"]*")|(?:'[^']*')|[^>\s]+))?)*)\s*(\/?)\s*(>?)/,A=/^<\/\s*([\w:-]+)[^>]*>/,H=/([\w:-]+)(?:\s*=\s*(?:(?:"((?:[^"])*)")|(?:'((?:[^'])*)')|([^>\s]+)))?/g,L=/^]*?)>/i,J=/"]/,c=/^mailto:/;return function(e,b){function l(a){a&&k.push(F(a))}function f(a,c){k.push("');l(c);k.push("")} -if(!e)return e;for(var n,h=e,k=[],m,p;n=h.match(d);)m=n[0],n[2]==n[3]&&(m="mailto:"+m),p=n.index,l(h.substr(0,p)),f(m,n[0].replace(c,"")),h=h.substring(p+n[0].length);l(h);return a(k.join(""))}}])})(window,window.angular); +(function(p,g,q){'use strict';function F(a){var d=[];t(d,g.noop).chars(a);return d.join("")}function k(a){var d={};a=a.split(",");var c;for(c=0;c=c;e--)d.end&&d.end(f[e]);f.length=c}}"string"!==typeof a&&(a=null===a||"undefined"===typeof a?"":""+a);var b,m,f=[],n=a,h;for(f.last=function(){return f[f.length-1]};a;){h="";m=!0;if(f.last()&&y[f.last()])a=a.replace(new RegExp("(.*)<\\s*\\/\\s*"+f.last()+"[^>]*>","i"),function(a,b){b=b.replace(I,"$1").replace(J,"$1");d.chars&&d.chars(s(b));return""}),e("",f.last());else{if(0===a.indexOf("\x3c!--"))b=a.indexOf("--",4),0<=b&&a.lastIndexOf("--\x3e",b)===b&&(d.comment&&d.comment(a.substring(4, +b)),a=a.substring(b+3),m=!1);else if(z.test(a)){if(b=a.match(z))a=a.replace(b[0],""),m=!1}else if(K.test(a)){if(b=a.match(A))a=a.substring(b[0].length),b[0].replace(A,e),m=!1}else L.test(a)&&((b=a.match(B))?(b[4]&&(a=a.substring(b[0].length),b[0].replace(B,c)),m=!1):(h+="<",a=a.substring(1)));m&&(b=a.indexOf("<"),h+=0>b?a:a.substring(0,b),a=0>b?"":a.substring(b),d.chars&&d.chars(s(h)))}if(a==n)throw M("badparse",a);n=a}e()}function s(a){if(!a)return"";var d=N.exec(a);a=d[1];var c=d[3];if(d=d[2])r.innerHTML= +d.replace(//g,">")}function t(a,d){var c=!1,e=g.bind(a,a.push);return{start:function(a,m,f){a=g.lowercase(a);!c&&y[a]&&(c=a);c||!0!==D[a]||(e("<"),e(a),g.forEach(m,function(c,f){var l= +g.lowercase(f),m="img"===a&&"src"===l||"background"===l;!0!==Q[l]||!0===E[l]&&!d(c,m)||(e(" "),e(f),e('="'),e(C(c)),e('"'))}),e(f?"/>":">"))},end:function(a){a=g.lowercase(a);c||!0!==D[a]||(e(""));a==c&&(c=!1)},chars:function(a){c||e(C(a))}}}var M=g.$$minErr("$sanitize"),B=/^<((?:[a-zA-Z])[\w:-]*)((?:\s+[\w:-]+(?:\s*=\s*(?:(?:"[^"]*")|(?:'[^']*')|[^>\s]+))?)*)\s*(\/?)\s*(>?)/,A=/^<\/\s*([\w:-]+)[^>]*>/,H=/([\w:-]+)(?:\s*=\s*(?:(?:"((?:[^"])*)")|(?:'((?:[^'])*)')|([^>\s]+)))?/g,L=/^]*?)>/i,J=/