on master help sign in
Fix display bug in `toText` function. Strings were not escaped properly :/ Now they are!
b938071evancz
core-js/Value.js+8−7
@@ -33,12 +33,13 @@ var Value = function(){
33 };
33 };
34
34
35 var properEscape = function(str) {
35 var properEscape = function(str) {
36− str.replace('"', """);
37− str.replace("&", "&");
36+ return str.replace(/&/g, "&")
38− str.replace("'", "'");
37+ .replace(/"/g, /*"*/ """)
38+ .replace(/'/g, /*'*/ "'")
39− str.replace("<", "&#60;");
39+ .replace(/</g, "&#60;")
40− str.replace(">", "&#62;");
40+ .replace(/>/g, "&#62;")
41− return str;
41+ .replace(/ /g, "&nbsp;")
42+ .replace(/\n/g, "<br/>");
42 };
43 };
43
44
44 var toText = function(elmList) {
45 var toText = function(elmList) {
@@ -56,7 +57,7 @@ var Value = function(){
56 return v ? "True" : "False";
57 return v ? "True" : "False";
57 } else if (typeof v === "number") {
58 } else if (typeof v === "number") {
58 return v+"";
59 return v+"";
59− } else if (typeof v === "string") {
60+ } else if (typeof v === "string" && v.length < 2) {
60 return "'"+v+"'";
61 return "'"+v+"'";
61 } else if (v[0]) {
62 } else if (v[0]) {
62 if (v[0].substring(0,5) === "Tuple") {
63 if (v[0].substring(0,5) === "Tuple") {
core-js/foreign/JSON.js+2−2
@@ -87,7 +87,7 @@ var ElmJSON = function() {
87 return v[1];
87 return v[1];
88 }
88 }
89 }
89 }
90− return JSON.stringify(fromValue([ 'JsonObject', obj ]), null, JS.castStringToJSString(sep));
90+ return Value.toText(JSON.stringify(fromValue([ 'JsonObject', obj ]), null, JS.castStringToJSString(sep)));
91 };
91 };
92 }
92 }
93 function fromJSString(str) {
93 function fromJSString(str) {
@@ -115,7 +115,7 @@ var ElmJSON = function() {
115 singleton : singleton,
115 singleton : singleton,
116 insert : insert,
116 insert : insert,
117 lookup : lookup,
117 lookup : lookup,
118− lookupWithDefault : lookupWithDefault,
118+ findWithDefault : lookupWithDefault,
119 remove : remove,
119 remove : remove,
120 toPrettyJSString : toPrettyJSString,
120 toPrettyJSString : toPrettyJSString,
121 toJSString : toPrettyJSString(''),
121 toJSString : toPrettyJSString(''),