From 8f3ee1feb7f0802a4c3137ccd96628032a0dc835 Mon Sep 17 00:00:00 2001 From: Philippe Jandot Date: Thu, 23 Apr 2015 18:18:47 +0200 Subject: [PATCH 1/3] remove the crap and fix the javascript --- closed.png | Bin 3940 -> 0 bytes img/bg.jpg | Bin 32139 -> 0 bytes js/lib/json-diff.js | 125 -------------------------------------------- json-diff.css | 73 -------------------------- open.png | Bin 3940 -> 0 bytes package.json | 23 -------- 6 files changed, 221 deletions(-) delete mode 100644 closed.png delete mode 100644 img/bg.jpg delete mode 100644 js/lib/json-diff.js delete mode 100644 json-diff.css delete mode 100644 open.png delete mode 100644 package.json diff --git a/closed.png b/closed.png deleted file mode 100644 index 147c71722d03592a2b949191aa28e6ac56d85a37..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3940 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 diff --git a/js/lib/json-diff.js b/js/lib/json-diff.js deleted file mode 100644 index 353a743..0000000 --- a/js/lib/json-diff.js +++ /dev/null @@ -1,125 +0,0 @@ - -var jsonDiff = (typeof exports !== "undefined" ? exports : window).jsonDiff = (function(){ - - function isArray(value) { - if(Array.isArray) { - return Array.isArray(value); - } - else { - return value && typeof value === "object" && value.constructor === Array; - } - } - - function typeofReal(value) { - return isArray(value) ? "array": value === null ? 'null' : typeof value; - } - - return { - - a: [], // first structure - b: [], // second structure - - feedback: function() { - - }, - - swapValues: function() { - console.log('>>> swapBoxes()'); - this.a = [this.b, this.b = this.a][0]; - }, - - clearValues: function() { - console.log('>>> clearBoxes()'); - this.a = this.b = null; - }, - - compareTree: function(a, b, name, results) { - - var self = this; - - var typeA = typeofReal(a); - var typeB = typeofReal(b); - - console.log('>>> compareTree(a=(' + typeA + ')' + a + - ', b=(' + typeB + ')' + b + - ', name=(' + typeof name + ')' + name + - ', results=(' + typeof results + ')' + results + ')'); - - var typeSpanA = document.createElement("span"); - typeSpanA.appendChild(document.createTextNode("(" + typeA + ")")) - typeSpanA.setAttribute("class", "typeName"); - - var typeSpanB = document.createElement("span"); - typeSpanB.appendChild(document.createTextNode("(" + typeB + ")")) - typeSpanB.setAttribute("class", "typeName"); - - var aString = (typeA === "object" || typeA === "array") ? "": String(a) + " "; - var bString = (typeB === "object" || typeB === "array") ? "": String(b) + " "; - - var leafNode = document.createElement("span"); - leafNode.appendChild(document.createTextNode(name)); - if (a === undefined) - { - leafNode.setAttribute("class", "added"); - leafNode.appendChild(document.createTextNode(": " + bString)); - leafNode.appendChild(typeSpanB); - self.feedback(leafNode); - } - else if (b === undefined) - { - leafNode.setAttribute("class", "removed"); - leafNode.appendChild(document.createTextNode(": " + aString)); - leafNode.appendChild(typeSpanA); - self.feedback(leafNode); - } - else if (typeA !== typeB || (typeA !== "object" && typeA !== "array" && a !== b)) - { - leafNode.setAttribute("class", "changed"); - leafNode.appendChild(document.createTextNode(": " + aString)); - leafNode.appendChild(typeSpanA); - leafNode.appendChild(document.createTextNode(" => " + bString)); - leafNode.appendChild(typeSpanB); - - if (name === 'key') leafNode.setAttribute('class', 'changed key'); - else self.feedback(leafNode); - } - else - { - leafNode.appendChild(document.createTextNode(": " + aString)); - leafNode.appendChild(typeSpanA); - } - - if (typeA === "object" || typeA === "array" || typeB === "object" || typeB === "array") - { - var keys = []; - for (var i in a) keys.push(i); - for (var i in b) keys.push(i); - keys.sort(); - - var listNode = document.createElement("ul"); - listNode.appendChild(leafNode); - - for (var i = 0; i < keys.length; i++) - { - if (keys[i] === keys[i - 1]) - continue; - - var li = document.createElement("li"); - listNode.appendChild(li); - - self.compareTree(a && a[keys[i]], b && b[keys[i]], keys[i], li); - } - - results.appendChild(listNode); - } - else - { - results.appendChild(leafNode); - } - - } - - }; - -})(); - diff --git a/json-diff.css b/json-diff.css deleted file mode 100644 index 04dc054..0000000 --- a/json-diff.css +++ /dev/null @@ -1,73 +0,0 @@ -body { - background-color: lightblue; -} - -#results li > span, #results ul > span { - -moz-border-radius: 5px; - -webkit-border-radius: 5px; - padding-right: 5px; - padding-left: 5px; -} - -#results li { - margin-top: 1px; - padding-left: 15px; -} -#results ul { - padding-left: 15px; - margin-left: -15px; - padding-top: 0px; - margin-top: 0px; - background: url(open.png) no-repeat 2px 5px; - list-style-type: none; -} -#results ul[closed="yes"] { - background: url(closed.png) no-repeat 2px 5px; -} -#results ul[closed="yes"] > * { - display: none; -} -#results ul[closed="yes"] > *:first-child { - display: block; -} -.typeName { - color: gray; -} -.changed { - background-color: #fcff7f; -} -.changed.key { - background-color: #eee; -} - -.added { - background-color: #8bff7f; -} -.removed { - background-color: #fd7f7f; -} - -textarea { - width: 49%; - height: 200px; -} - -.contentbox { - border: 1px dashed black; - background-color: white; - padding: 15px; - margin: 10px; -} - -h2 { - text-align: center; - margin: 0px;; -} - -#results { - padding-left: 40px; -} - -#inputs { - text-align: center; -} \ No newline at end of file diff --git a/open.png b/open.png deleted file mode 100644 index 1d48c6a2e6b23555c911403aee2eae5e87d2d486..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3940 zcmV-q51a6bP)4Tx0C=3OmuWcE@At>gXNIwleJ8T-S+bXXi7aEy8e{ClFk>wwMTjI>vTsQk zLPAL?kx1Wcm9!`!BwyMr&Hq6^_27T~uK$z&dGxy9*SX*KxzCex9RSurJdqfR0)S&- zDE*3tRD7^V;y*%HZ_v?CpIW zVjR<)@|-J=G`ie$z2`RUKIQS=bM@$sHw#|aN0DIQYwzdej|;F0Gz~Hc)(<%ls&z~= zOfy`Is2iadX-2}4-J<-XV`I`|i{h@vQ;uIdQI$}dSeR6DvN*ZyR8>md>4r0u)TXqi zv(4%C8MT=u=W?=AvLny?=Y(7c%Ozcm&WpK3&JQaHD)cIHxNKIeRU%!=S^BGNv3#te ztFpZ6Y&EHdSQ~yNtS;*P7s-_%b;(RsB5v1@5K9%dgY-Ulq(my>@=1`IhJH#=EDpSKlXn zaGH~w+xj>(U$8(}R9gJ;>HbpYvg3--%G~F^)ygj?*F68#Uguf=vN7>K&J#Sh^h zpMUmk=5GaVAK2m8ng4a08bGB2AVSC+6b0Q(^AfX{E{lPlv4mNRWu7&U-H>C2E1yT5 zcZlCc;GU4Au*aS>k!H~uF|4?e1W~d|YD$J#R$ne$zD!|Qabq8^vYv{YDoHJ4f0_DC zjVaAdZC)KsUEBe`gK>Ik`gsQBhF6U0jq6S7Osmbx&5I7@TAZ~!c{tuG)jHp%+O`>Y z%kF{wV~3}X6Hd>ar;ogLdF%SYZQgy^W5aXX3+>H<=k#In*(5CZPWtuxcLdZ076hdS zCxnnfgN}KJd4#(Xog~BPmEoxVVr8b^l_0BdYMVv)Dm*?G%TmivSDdOmS(Q|Mye6hL;!04R_f?mA+iT_xdX4H$iWJG_JuQ6KxmsDgx@sn6zp8<8tksRm3Z5|N9T^<9cu6UyMy=I`%3PgeGuF4|Il(kY7horJnA00 z{P@JM_lU_8`BBc%&8P4G8GJ?=%N>uJI5Md*#Wl71eE7xPm#x!RUggiEz9zr%dVA=d z$}HdP*8A5Vdge+$9-ntz&|KtNT>Uh%L|Lv}Dfyhgn*AkpE#cqDb>9u=ujb!0zDxXI z`|<1N^5*lc{_Pt(wZHPHZd57&q#&`Vcytxb0>+rGlR=Mhl-ZAk%38!O&(Y1L&rRXo z%NN7nCqNa_5f0pwFY-uqTTEH}s6>Y3O{rNKMp3d*vB|NG$NAaW+Uqz-II=nJI4wKR92s%B8W*;3QxPdXr`^xkrCOxvomENSo57l~nfdVixzD)-gJ zw!Dl>gnYvS$wF-5kD_;%9~C#3kd6pYiNLDgbey$p;?yjk*O}|2_J9^cke&03h zwYi3l#;hhhMWdOy`9sT{>m{x6Z6580H>5jQJAU4r?;P*C-`#oZ+U@L~pgV@Wg1z7F zj@`T7ci}$qfnC4KLym`Q15XDV9-SHTe7t{{et3H1+LM&gfTy^Bbe>6!v5akuKcDEH zES*Yx?(stVCHKoO(~n+N&cwgAeqcK?zK3jz>_kwh0KaD+002e0zfGiK*|b$QwRXZ0^q0( zC?zgHF%JVWJiI$U00Da7260dUL$CuMAVDe=K@;4ADOf>h5Ftbzu|efW#+Bq)8?Dtj}+h#xFP5&NENCRwiW)lr&h#HWJk1Nue%td*lqFS5{8oW zl4DY3(t$D>vKZM3xmx*Xg+q#hic3nj_nlY9tEi}=Rj1UN_GhS*HGDN4v`n;>bVPJn zbhi&IAAGGhraxlv$nd_=pz*NDl<9)m_8}e%1xuyF+E#|vwl-e2(YRbYiv5_wmXoxz z^N~!K0XG_VV~FndMs$KTA zqOB^lM!t5ouB_gpL9}s^(%F*P>fdhBq1`FaHG8X}C$ZP=p5lG(e&pfW;L6b2@UKy} zf8@rDC;X=}URW9gA*5 zuhJ;cgwiz8tkSB|#?aou&|&N`WtbH@eY!llMS5fU3i@9Rc!mdz(v0bhD@;yIJQ< zO$1kkiiItOf9`1z@esv|_U(-oQxsbiZ<%;W^ySPV)=Z&LV-X{16pK8LSAA`Sf zKw@A|FcM-Onssa{d@nI9qKCvx_K0eX-j217t31whqA*bFyby z&n0DJ&sSWK%I(P0yVO^JEBt=Bp@dMzQr=bRTaB&hxZ-&gQ{UX+)x<%0)N;Djtexe? z+nbaw`|h3F)puO(GTiIGpWbghz&p4!bbq+!$(g6&&s@e$Cbgf-z2umFI+OXv@*Ugk z#E0^a#09fYB1=0fuU7}xDC?KLp8g*G(|OByN0~|m01U8!Fvx*6Sb!^pKmz1I4RpaM ze1u;JFQSUrAR$Nw(uj;A>nK5#8H$9eK~18W(I)5w^iA|SjWP|9rj_O!tuAc}?Ffb+ z6NI@%$4(baH$X2mOuS6zm}!`kn18V(W9hKDtfH)KY?f>v*-vvw za13%raPf2Xa|iNZc{+IUd|19-{zw5?fmy*aA$MUx;psi4B3`0mq6>Q|VzJ^@68j{% zB)6sBOApDk$`;F=k`Gp}Q`A%v-iO*ZuRN^MqMEOkxIakURl`ctKub+qT!&kiR`=_H zxr0-B!}|ROcMWeD^%&nXd2IU1Z1oVMg@mR0VQVX2>tvfM+acUHdl?5W$6}{9N2FY$ zU5DI7J(4`%dg*%?;6D;neUtsh1LOnG1kHt*g`Ua_`ws7 z32RAd$r7h}PrIF2PfJbb&!{`6meq6KJZC7^?&8EHhy2OHsLQg&v!(gv78To7O*Qx{ zTy;bBDGi2A^px?IE3GHn@g3Hkd%I?CUFxyxWxG4xSMeb7p~;}g5b}6&WPEhspPsSy ziIyqKi>B$A8G|=mZ@%Vn>Z~syIGj7vt z^Ve40Hg0=*$7g5p*IB9wl?w2CUjhIC+8}E@0sf!kSZLI)CkFs9hxypp0suV#ED*^! z$6Y2xJDBdWe~_8QF8kt54)1b&ps~%LoJceKT@J=u;&$0D%*o-8e<;rC?^{NH^8HAr z4u3rzkL+?}l)cj~hlC&glke+i@~5`2P@6xVL1c?R^+OO?10D#!_e=l)3>!d6C;-5{ z_Wu9X7qVY0834dIoER4w6c9)jH6#*4{S-tk!U#$VqN>WuTJS$k7dJn!KS>b)000Sa zNLh0L01FcU01FcV0GgZ_0001^NklRd5)=x9!eG$jNJt>V zSvUhHxxJ+2Fv6)j$GTEnOXJ?nY;k0YfD(F6$0`A0000", - "contributors": [ - { "name": "hij1nx", "email": "hi1jnx.dev@gmail.com" }, - { "name": "Tom Robinson", "email": "tlr@gmail.com" }, - { "name": "Sami Samhuri", "email": "sami.samhuri@gmail.com" } - ], - "repository": { - "type": "git", - "url": "https://github.com/samsonjs/json-diff" - }, - "keywords": ["cli", "json", "diff", "tools"], - "dependencies": { - "optimist": ">= 0.0.6", - "colors": ">= 0.3.0" - }, - "bin": { "forever": "./bin/jsond" }, - "main": "./lib/jsond", - "engines": { "node": ">= 0.2.0" } -} From da76766a362576aa44cb5c14adf975bee58687d0 Mon Sep 17 00:00:00 2001 From: Philippe Jandot Date: Thu, 23 Apr 2015 18:19:27 +0200 Subject: [PATCH 2/3] this time really fix the javascript --- js/app.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/js/app.js b/js/app.js index 541866a..22a9eec 100644 --- a/js/app.js +++ b/js/app.js @@ -84,7 +84,7 @@ if(!window.console){ }, false); document.getElementById("compare").addEventListener("click", function() { - jsond.compare(JSON.parse(jsonBoxA.value), JSON.parse(jsonBoxB.value), "root", populateResults); + self.startCompare(); }, false); jsond.feedback = self.markChanged; From abbc390b60f614136297981cad9cba89fa4e943e Mon Sep 17 00:00:00 2001 From: Philippe Jandot Date: Fri, 24 Apr 2015 09:18:43 +0200 Subject: [PATCH 3/3] add python simple http server ... why not? --- .gitignore | 110 +++++++++++++++++++++++++++++++++++++++++++++++++++++ bin/jsond | 9 ----- jsond.py | 15 ++++++++ 3 files changed, 125 insertions(+), 9 deletions(-) create mode 100644 .gitignore delete mode 100644 bin/jsond create mode 100755 jsond.py diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..16f5197 --- /dev/null +++ b/.gitignore @@ -0,0 +1,110 @@ +# Created by .ignore support plugin (hsz.mobi) +### JetBrains template +# Covers JetBrains IDEs: IntelliJ, RubyMine, PhpStorm, AppCode, PyCharm + +*.iml + +## Directory-based project format: +.idea/ +# if you remove the above rule, at least ignore the following: + +# User-specific stuff: +# .idea/workspace.xml +# .idea/tasks.xml +# .idea/dictionaries + +# Sensitive or high-churn files: +# .idea/dataSources.ids +# .idea/dataSources.xml +# .idea/sqlDataSources.xml +# .idea/dynamic.xml +# .idea/uiDesigner.xml + +# Gradle: +# .idea/gradle.xml +# .idea/libraries + +# Mongo Explorer plugin: +# .idea/mongoSettings.xml + +## File-based project format: +*.ipr +*.iws + +## Plugin-specific files: + +# IntelliJ +/out/ + +# mpeltonen/sbt-idea plugin +.idea_modules/ + +# JIRA plugin +atlassian-ide-plugin.xml + +# Crashlytics plugin (for Android Studio and IntelliJ) +com_crashlytics_export_strings.xml +crashlytics.properties +crashlytics-build.properties + + +### Python template +# Byte-compiled / optimized / DLL files +__pycache__/ +*.py[cod] + +# C extensions +*.so + +# Distribution / packaging +.Python +env/ +build/ +develop-eggs/ +dist/ +downloads/ +eggs/ +.eggs/ +lib/ +lib64/ +parts/ +sdist/ +var/ +*.egg-info/ +.installed.cfg +*.egg + +# PyInstaller +# Usually these files are written by a python script from a template +# before PyInstaller builds the exe, so as to inject date/other infos into it. +*.manifest +*.spec + +# Installer logs +pip-log.txt +pip-delete-this-directory.txt + +# Unit test / coverage reports +htmlcov/ +.tox/ +.coverage +.coverage.* +.cache +nosetests.xml +coverage.xml +*,cover + +# Translations +*.mo +*.pot + +# Django stuff: +*.log + +# Sphinx documentation +docs/_build/ + +# PyBuilder +target/ + + diff --git a/bin/jsond b/bin/jsond deleted file mode 100644 index 6b8f4d3..0000000 --- a/bin/jsond +++ /dev/null @@ -1,9 +0,0 @@ -#!/usr/bin/env node - -var sys = require("sys"), - fs = require("fs"), - argv = require('optimist').argv, - colors = require("colors"), - jsond = require("../js/lib/jsond"); - -// To-Do: seperate rendering to provision for nodejs output using colors etc. \ No newline at end of file diff --git a/jsond.py b/jsond.py new file mode 100755 index 0000000..3aba86e --- /dev/null +++ b/jsond.py @@ -0,0 +1,15 @@ +#!/usr/bin/python + +import sys +import SocketServer +from SimpleHTTPServer import SimpleHTTPRequestHandler as Handler + +if sys.argv[1:]: + port = int(sys.argv[1]) +else: + port = 8888 + +httpd = SocketServer.TCPServer(('0.0.0.0', port), Handler) +sa = httpd.socket.getsockname() +print "Serving HTTP on", sa[0], "port", sa[1], "..." +httpd.serve_forever() \ No newline at end of file