From d60db8aca6e9afacc95eef91333c5f900dba3c49 Mon Sep 17 00:00:00 2001 From: Elton Rodrigues Date: Fri, 6 Nov 2015 15:27:28 -0200 Subject: [PATCH 1/3] =?UTF-8?q?adicionando=20op=C3=A7=C3=A3o=20para=20mant?= =?UTF-8?q?er=20a=20formata=C3=A7=C3=A3o=20do=20HTML?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- jquery.pretty-text-diff.js | 23 +++++++++++++++-------- jquery.pretty-text-diff.min.js | 4 ++-- 2 files changed, 17 insertions(+), 10 deletions(-) diff --git a/jquery.pretty-text-diff.js b/jquery.pretty-text-diff.js index 8c4d624..594fecc 100644 --- a/jquery.pretty-text-diff.js +++ b/jquery.pretty-text-diff.js @@ -1,12 +1,13 @@ -// Generated by CoffeeScript 1.9.2 +// Generated by CoffeeScript 1.7.1 /* @preserve jQuery.PrettyTextDiff 1.0.4 See https://github.com/arnab/jQuery.PrettyTextDiff/ - */ +*/ (function() { - var $; + var $, + settings_global; $ = jQuery; @@ -18,19 +19,24 @@ See https://github.com/arnab/jQuery.PrettyTextDiff/ changedContainer: ".changed", diffContainer: ".diff", cleanup: true, + isHtml: false, debug: false }; settings = $.extend(settings, options); + settings_global = settings; $.fn.prettyTextDiff.debug("Options: ", settings, settings); dmp = new diff_match_patch(); return this.each(function() { var changed, diff_as_html, diffs, original; if (settings.originalContent && settings.changedContent) { - original = $('
').html(settings.originalContent).text(); - changed = $('
').html(settings.changedContent).text(); + original = settings.isHtml ? settings.originalContent : $('
').html(settings.originalContent).text(); + changed = settings.isHtml ? settings.changedContent :$('
').html(settings.changedContent).text(); } else { - original = $(settings.originalContainer, this).text(); - changed = $(settings.changedContainer, this).text(); + var $originalContainer = $(settings.originalContainer, this); + var $changedContainer = $(settings.changedContainer, this); + + original = settings.isHtml ? $originalContainer.html() : $originalContainer.text(); + changed = settings.isHtml ? $changedContainer.html() : $changedContainer.text(); } $.fn.prettyTextDiff.debug("Original text found: ", original, settings); $.fn.prettyTextDiff.debug("Changed text found: ", changed, settings); @@ -42,6 +48,7 @@ See https://github.com/arnab/jQuery.PrettyTextDiff/ diff_as_html = $.map(diffs, function(diff) { return $.fn.prettyTextDiff.createHTML(diff); }); + $(settings.diffContainer, this).html(diff_as_html.join('')); return this; }); @@ -62,7 +69,7 @@ See https://github.com/arnab/jQuery.PrettyTextDiff/ pattern_gt = />/g; pattern_para = /\n/g; operation = diff[0], data = diff[1]; - text = data.replace(pattern_amp, '&').replace(pattern_lt, '<').replace(pattern_gt, '>').replace(pattern_para, '
'); + text = settings_global.isHtml ? data : data.replace(pattern_amp, '&').replace(pattern_lt, '<').replace(pattern_gt, '>').replace(pattern_para, '
'); switch (operation) { case DIFF_INSERT: return '' + text + ''; diff --git a/jquery.pretty-text-diff.min.js b/jquery.pretty-text-diff.min.js index 9a09975..f789a70 100644 --- a/jquery.pretty-text-diff.min.js +++ b/jquery.pretty-text-diff.min.js @@ -1,5 +1,5 @@ /* @preserve jQuery.PrettyTextDiff 1.0.4 See https://github.com/arnab/jQuery.PrettyTextDiff/ - */ -(function(){var $;$=jQuery;$.fn.extend({prettyTextDiff:function(options){var dmp,settings;settings={originalContainer:".original",changedContainer:".changed",diffContainer:".diff",cleanup:true,debug:false};settings=$.extend(settings,options);$.fn.prettyTextDiff.debug("Options: ",settings,settings);dmp=new diff_match_patch;return this.each(function(){var changed,diff_as_html,diffs,original;if(settings.originalContent&&settings.changedContent){original=$("
").html(settings.originalContent).text();changed=$("
").html(settings.changedContent).text()}else{original=$(settings.originalContainer,this).text();changed=$(settings.changedContainer,this).text()}$.fn.prettyTextDiff.debug("Original text found: ",original,settings);$.fn.prettyTextDiff.debug("Changed text found: ",changed,settings);diffs=dmp.diff_main(original,changed);if(settings.cleanup){dmp.diff_cleanupSemantic(diffs)}$.fn.prettyTextDiff.debug("Diffs: ",diffs,settings);diff_as_html=$.map(diffs,function(diff){return $.fn.prettyTextDiff.createHTML(diff)});$(settings.diffContainer,this).html(diff_as_html.join(""));return this})}});$.fn.prettyTextDiff.debug=function(message,object,settings){if(settings.debug){return console.log(message,object)}};$.fn.prettyTextDiff.createHTML=function(diff){var data,html,operation,pattern_amp,pattern_gt,pattern_lt,pattern_para,text;html=[];pattern_amp=/&/g;pattern_lt=//g;pattern_para=/\n/g;operation=diff[0],data=diff[1];text=data.replace(pattern_amp,"&").replace(pattern_lt,"<").replace(pattern_gt,">").replace(pattern_para,"
");switch(operation){case DIFF_INSERT:return""+text+"";case DIFF_DELETE:return""+text+"";case DIFF_EQUAL:return""+text+""}}}).call(this); \ No newline at end of file +*/ +(function(){var t,e;t=jQuery,t.fn.extend({prettyTextDiff:function(n){var i,r;return r={originalContainer:".original",changedContainer:".changed",diffContainer:".diff",cleanup:!0,isHtml:!1,debug:!1},r=t.extend(r,n),e=r,t.fn.prettyTextDiff.debug("Options: ",r,r),i=new diff_match_patch,this.each(function(){var e,n,a,f;if(r.originalContent&&r.changedContent)f=r.isHtml?r.originalContent:t("
").html(r.originalContent).text(),e=r.isHtml?r.changedContent:t("
").html(r.changedContent).text();else{var l=t(r.originalContainer,this),o=t(r.changedContainer,this);f=r.isHtml?l.html():l.text(),e=r.isHtml?o.html():o.text()}return t.fn.prettyTextDiff.debug("Original text found: ",f,r),t.fn.prettyTextDiff.debug("Changed text found: ",e,r),a=i.diff_main(f,e),r.cleanup&&i.diff_cleanupSemantic(a),t.fn.prettyTextDiff.debug("Diffs: ",a,r),n=t.map(a,function(e){return t.fn.prettyTextDiff.createHTML(e)}),t(r.diffContainer,this).html(n.join("")),this})}}),t.fn.prettyTextDiff.debug=function(t,e,n){return n.debug?console.log(t,e):void 0},t.fn.prettyTextDiff.createHTML=function(t){var n,i,r,a,f,l,o,c;switch(i=[],a=/&/g,l=//g,o=/\n/g,r=t[0],n=t[1],c=e.isHtml?n:n.replace(a,"&").replace(l,"<").replace(f,">").replace(o,"
"),r){case DIFF_INSERT:return""+c+"";case DIFF_DELETE:return""+c+"";case DIFF_EQUAL:return""+c+""}}}).call(this); \ No newline at end of file From e321c513a88543cdcdfe69225238684d08546907 Mon Sep 17 00:00:00 2001 From: Elton Rodrigues Date: Mon, 30 Jan 2017 11:32:21 -0200 Subject: [PATCH 2/3] =?UTF-8?q?incrmentando=20vers=C3=A3o?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitignore | 1 + Cakefile | 18 ---------- jquery.pretty-text-diff.coffee | 61 ---------------------------------- package.json | 2 +- 4 files changed, 2 insertions(+), 80 deletions(-) create mode 100644 .gitignore delete mode 100644 Cakefile delete mode 100644 jquery.pretty-text-diff.coffee diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..600d2d3 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +.vscode \ No newline at end of file diff --git a/Cakefile b/Cakefile deleted file mode 100644 index 3f20c50..0000000 --- a/Cakefile +++ /dev/null @@ -1,18 +0,0 @@ -{exec} = require 'child_process' - -srcFile = 'jquery.pretty-text-diff' - -task 'compile', 'Build project from *.coffee to *.js', -> - exec "coffee --compile #{srcFile}.coffee", (err, stdout, stderr) -> - throw err if err - console.log stdout + stderr - -task 'minify', 'Minify js into min.js', -> - exec "uglifyjs #{srcFile}.js --o #{srcFile}.min.js --comments", (err, stdout, stderr) -> - throw err if err - console.log stdout + stderr - -task 'build', 'compile and minify', -> - exec "cake compile && cake minify", (err, stdout, stderr) -> - throw err if err - console.log stdout + stderr diff --git a/jquery.pretty-text-diff.coffee b/jquery.pretty-text-diff.coffee deleted file mode 100644 index 6108610..0000000 --- a/jquery.pretty-text-diff.coffee +++ /dev/null @@ -1,61 +0,0 @@ -### -@preserve jQuery.PrettyTextDiff 1.0.4 -See https://github.com/arnab/jQuery.PrettyTextDiff/ -### - -$ = jQuery - -$.fn.extend - prettyTextDiff: (options) -> - # Defaults - settings = - originalContainer: ".original", - changedContainer: ".changed", - diffContainer: ".diff", - cleanup: true - debug: false - settings = $.extend settings, options - $.fn.prettyTextDiff.debug "Options: ", settings, settings - - dmp = new diff_match_patch(); - @each -> - if settings.originalContent and settings.changedContent - original = $('
').html(settings.originalContent).text() - changed = $('
').html(settings.changedContent).text() - else - original = $(settings.originalContainer, this).text() - changed = $(settings.changedContainer, this).text() - - $.fn.prettyTextDiff.debug "Original text found: ", original, settings - $.fn.prettyTextDiff.debug "Changed text found: ", changed, settings - - diffs = dmp.diff_main(original, changed) - - dmp.diff_cleanupSemantic(diffs) if settings.cleanup - $.fn.prettyTextDiff.debug "Diffs: ", diffs, settings - - diff_as_html = $.map(diffs, (diff) -> - $.fn.prettyTextDiff.createHTML(diff)) - $(settings.diffContainer, this).html(diff_as_html.join('')); - - @ - -$.fn.prettyTextDiff.debug = (message, object, settings) -> - console.log(message, object) if settings.debug - -$.fn.prettyTextDiff.createHTML = (diff) -> - html = []; - pattern_amp = /&/g - pattern_lt = //g - pattern_para = /\n/g - - [operation, data] = diff - text = data.replace(pattern_amp, '&') \ - .replace(pattern_lt, '<') \ - .replace(pattern_gt, '>') \ - .replace(pattern_para, '
') - switch operation - when DIFF_INSERT then '' + text + '' - when DIFF_DELETE then '' + text + '' - when DIFF_EQUAL then '' + text + '' diff --git a/package.json b/package.json index 160436a..8e5161d 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "jquery-prettytextdiff", - "version": "1.0.4", + "version": "2.0.0", "description": "A jQuery plugin to diff text painlessly. Uses Google's diff_match_patch library underneath.", "main": "jquery.pretty-text-diff.js", "repository": { From cf18a1332c1944e4d751c3bc2b7eb2084a00ae30 Mon Sep 17 00:00:00 2001 From: Elton Rodrigues Date: Mon, 30 Jan 2017 11:52:28 -0200 Subject: [PATCH 3/3] =?UTF-8?q?corrigindo=20numero=20da=20vers=C3=A3o=20no?= =?UTF-8?q?s=20arquivos?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- jquery.pretty-text-diff.js | 5 ++--- jquery.pretty-text-diff.min.js | 4 ++-- 2 files changed, 4 insertions(+), 5 deletions(-) diff --git a/jquery.pretty-text-diff.js b/jquery.pretty-text-diff.js index 594fecc..78c5c8c 100644 --- a/jquery.pretty-text-diff.js +++ b/jquery.pretty-text-diff.js @@ -1,8 +1,7 @@ -// Generated by CoffeeScript 1.7.1 /* -@preserve jQuery.PrettyTextDiff 1.0.4 -See https://github.com/arnab/jQuery.PrettyTextDiff/ +@preserve jQuery.PrettyTextDiff 2.0.0 +Project forked https://github.com/arnab/jQuery.PrettyTextDiff/ */ (function() { diff --git a/jquery.pretty-text-diff.min.js b/jquery.pretty-text-diff.min.js index f789a70..afd166e 100644 --- a/jquery.pretty-text-diff.min.js +++ b/jquery.pretty-text-diff.min.js @@ -1,5 +1,5 @@ /* -@preserve jQuery.PrettyTextDiff 1.0.4 -See https://github.com/arnab/jQuery.PrettyTextDiff/ +@preserve jQuery.PrettyTextDiff 2.0.0 +Forked by https://github.com/arnab/jQuery.PrettyTextDiff/ */ (function(){var t,e;t=jQuery,t.fn.extend({prettyTextDiff:function(n){var i,r;return r={originalContainer:".original",changedContainer:".changed",diffContainer:".diff",cleanup:!0,isHtml:!1,debug:!1},r=t.extend(r,n),e=r,t.fn.prettyTextDiff.debug("Options: ",r,r),i=new diff_match_patch,this.each(function(){var e,n,a,f;if(r.originalContent&&r.changedContent)f=r.isHtml?r.originalContent:t("
").html(r.originalContent).text(),e=r.isHtml?r.changedContent:t("
").html(r.changedContent).text();else{var l=t(r.originalContainer,this),o=t(r.changedContainer,this);f=r.isHtml?l.html():l.text(),e=r.isHtml?o.html():o.text()}return t.fn.prettyTextDiff.debug("Original text found: ",f,r),t.fn.prettyTextDiff.debug("Changed text found: ",e,r),a=i.diff_main(f,e),r.cleanup&&i.diff_cleanupSemantic(a),t.fn.prettyTextDiff.debug("Diffs: ",a,r),n=t.map(a,function(e){return t.fn.prettyTextDiff.createHTML(e)}),t(r.diffContainer,this).html(n.join("")),this})}}),t.fn.prettyTextDiff.debug=function(t,e,n){return n.debug?console.log(t,e):void 0},t.fn.prettyTextDiff.createHTML=function(t){var n,i,r,a,f,l,o,c;switch(i=[],a=/&/g,l=//g,o=/\n/g,r=t[0],n=t[1],c=e.isHtml?n:n.replace(a,"&").replace(l,"<").replace(f,">").replace(o,"
"),r){case DIFF_INSERT:return""+c+"";case DIFF_DELETE:return""+c+"";case DIFF_EQUAL:return""+c+""}}}).call(this); \ No newline at end of file