From ee01566ca48321bc268108df290ea3eb99a824c3 Mon Sep 17 00:00:00 2001 From: Matteo Suppo Date: Mon, 23 Jun 2014 10:40:06 +0200 Subject: [PATCH] New version --- angular-diff.js | 4 ++-- angular-diff.min.js | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/angular-diff.js b/angular-diff.js index 8b9799e..a54c1fc 100755 --- a/angular-diff.js +++ b/angular-diff.js @@ -1,7 +1,7 @@ 'use strict'; angular.module('diff', []) - .filter('diff', function () { + .filter('diff', function ($sce) { /* * Javascript Diff Algorithm @@ -173,7 +173,7 @@ angular.module('diff', []) // Actual filter return function(input, match) { - return diffString(input, match); + return $sce.trustAsHtml(diffString(input, match)); }; }); diff --git a/angular-diff.min.js b/angular-diff.min.js index d173a63..d8eef95 100755 --- a/angular-diff.min.js +++ b/angular-diff.min.js @@ -1,2 +1,2 @@ -"use strict";angular.module("diff",[]).filter("diff",function(){function t(t){var r=t;return r=r.replace(/&/g,"&"),r=r.replace(//g,">"),r=r.replace(/'/g,""")}function r(r,o){r=r.replace(/\s+$/,""),o=o.replace(/\s+$/,"");var n,l=e(""===r?[]:r.split(/\s+/),""===o?[]:o.split(/\s+/)),w="",s=r.match(/\s+/g);null===s?s=["\n"]:s.push("\n");var u=o.match(/\s+/g);if(null===u?u=["\n"]:u.push("\n"),0===l.n.length)for(n=0;n"+t(l.o[n])+s[n]+"";else{if(null===l.n[0].text)for(o=0;o"+t(l.o[o])+s[o]+"";for(n=0;n"+t(l.o[o])+s[o]+"";w+=" "+l.n[n].text+u[n]+f}else w+=""+t(l.n[n])+u[n]+""}return w}function e(t,r){var e,o={},n={};for(e=0;e0;e--)r[e].text&&!r[e-1].text&&r[e].row>0&&!t[r[e].row-1].text&&r[e-1]===t[r[e].row-1]&&(r[e-1]={text:r[e-1],row:r[e].row-1},t[r[e].row-1]={text:t[r[e].row-1],row:e-1});return{o:t,n:r}}return function(t,e){return r(t,e)}}); +"use strict";angular.module("diff",[]).filter("diff",["$sce",function(t){function r(t){var r=t;return r=r.replace(/&/g,"&"),r=r.replace(//g,">"),r=r.replace(/'/g,""")}function e(t,e){t=t.replace(/\s+$/,""),e=e.replace(/\s+$/,"");var n,l=o(""===t?[]:t.split(/\s+/),""===e?[]:e.split(/\s+/)),s="",w=t.match(/\s+/g);null===w?w=["\n"]:w.push("\n");var u=e.match(/\s+/g);if(null===u?u=["\n"]:u.push("\n"),0===l.n.length)for(n=0;n"+r(l.o[n])+w[n]+"";else{if(null===l.n[0].text)for(e=0;e"+r(l.o[e])+w[e]+"";for(n=0;n"+r(l.o[e])+w[e]+"";s+=" "+l.n[n].text+u[n]+f}else s+=""+r(l.n[n])+u[n]+""}return s}function o(t,r){var e,o={},n={};for(e=0;e0;e--)r[e].text&&!r[e-1].text&&r[e].row>0&&!t[r[e].row-1].text&&r[e-1]===t[r[e].row-1]&&(r[e-1]={text:r[e-1],row:r[e].row-1},t[r[e].row-1]={text:t[r[e].row-1],row:e-1});return{o:t,n:r}}return function(r,o){return t.trustAsHtml(e(r,o))}}]); function escape(e){var n=e;return n=n.replace(/&/g,"&"),n=n.replace(//g,">"),n=n.replace(/"/g,""")}function diffString(e,n){e=e.replace(/\s+$/,""),n=n.replace(/\s+$/,"");var r=diff(""==e?[]:e.split(/\s+/),""==n?[]:n.split(/\s+/)),t="",l=e.match(/\s+/g);null==l?l=["\n"]:l.push("\n");var o=n.match(/\s+/g);if(null==o?o=["\n"]:o.push("\n"),0==r.n.length)for(var s=0;s"+escape(r.o[s])+l[s]+"";else{if(null==r.n[0].text)for(n=0;n"+escape(r.o[n])+l[n]+"";for(var s=0;s"+escape(r.n[s])+o[s]+"";else{var a="";for(n=r.n[s].row+1;n"+escape(r.o[n])+l[n]+"";t+=" "+r.n[s].text+o[s]+a}}return t}function randomColor(){return"rgb("+100*Math.random()+"%, "+100*Math.random()+"%, "+100*Math.random()+"%)"}function diffString2(e,n){e=e.replace(/\s+$/,""),n=n.replace(/\s+$/,"");var r=diff(""==e?[]:e.split(/\s+/),""==n?[]:n.split(/\s+/)),t=e.match(/\s+/g);null==t?t=["\n"]:t.push("\n");var l=n.match(/\s+/g);null==l?l=["\n"]:l.push("\n");for(var o="",s=new Array,a=0;a'+escape(r.o[a].text)+t[a]+"":""+escape(r.o[a])+t[a]+"";for(var u="",a=0;a'+escape(r.n[a].text)+l[a]+"":""+escape(r.n[a])+l[a]+"";return{o:o,n:u}}function diff(e,n){for(var r=new Object,t=new Object,l=0;l0;l--)null!=n[l].text&&null==n[l-1].text&&n[l].row>0&&null==e[n[l].row-1].text&&n[l-1]==e[n[l].row-1]&&(n[l-1]={text:n[l-1],row:n[l].row-1},e[n[l].row-1]={text:e[n[l].row-1],row:l-1});return{o:e,n:n}} \ No newline at end of file