prettydiff
Advanced tools
Comparing version 100.1.7 to 100.2.0
@@ -25,2 +25,3 @@ { | ||
"no-continue": "error", | ||
"no-control-regex": 0, | ||
"no-else-return": "error", | ||
@@ -27,0 +28,0 @@ "no-empty": "error", |
/*global global*/ | ||
(function options_init(): void { | ||
"use strict"; | ||
const optionDef = { | ||
const optionDef:optionDef = { | ||
brace_line : { | ||
@@ -35,5 +35,5 @@ api : "any", | ||
values : { | ||
"collapse" : "Sets options.formatObject to 'indent' and options.neverflatten to true.", | ||
"collapse-preserve-inline": "Sets options.bracepadding to true and options.formatObject to 'inline'.", | ||
"expand" : "Sets options.braces to true, options.formatObject to 'indent', and options.never" + | ||
"collapse" : "Sets options.format_object to 'indent' and options.neverflatten to true.", | ||
"collapse-preserve-inline": "Sets options.bracepadding to true and options.format_object to 'inline'.", | ||
"expand" : "Sets options.braces to true, options.format_object to 'indent', and options.never" + | ||
"flatten to true.", | ||
@@ -102,3 +102,3 @@ "none" : "Ignores this option" | ||
label : "Compressed CSS", | ||
lexer : "css", | ||
lexer : "style", | ||
mode : "beautify", | ||
@@ -151,3 +151,3 @@ type : "boolean" | ||
label : "Insert Empty Lines", | ||
lexer : "css", | ||
lexer : "style", | ||
mode : "beautify", | ||
@@ -492,3 +492,3 @@ type : "boolean" | ||
type : "string", | ||
values : { // analysis: "returns a code examination report", | ||
values : { | ||
beautify: "beautifies code and returns a string", | ||
@@ -495,0 +495,0 @@ diff : "returns either command line list of differences or an HTML report", |
@@ -5,3 +5,3 @@ /*global global, prettydiff*/ | ||
const markup = function beautify_markup(options:any):string { | ||
const data:parsedArray = options.parsed, | ||
const data:data = options.parsed, | ||
lexer:string = "markup", | ||
@@ -435,5 +435,5 @@ c:number = (options.end < 1 || options.end > data.token.length) | ||
level.push(-10); | ||
} else if (options.wrap > 0) { | ||
} else if (options.wrap > 0 && (data.types[a].indexOf("template") < 0 || (next < c && data.types[a].indexOf("template") > -1 && data.types[next].indexOf("template") < 0))) { | ||
content(); | ||
} else if (next < c && (data.types[next].indexOf("end") > -1 || data.types[next].indexOf("start") > -1) && data.lines[next] > 0) { | ||
} else if (next < c && (data.types[next].indexOf("end") > -1 || data.types[next].indexOf("start") > -1) && (data.lines[next] > 0 || data.types[next].indexOf("template_") > -1)) { | ||
level.push(indent); | ||
@@ -468,2 +468,5 @@ } else if (data.lines[next] === 0) { | ||
level.push(-20); | ||
} else if (data.types[a] === "template_else") { | ||
level[a - 1] = indent - 1; | ||
level.push(indent); | ||
} else { | ||
@@ -470,0 +473,0 @@ level.push(indent); |
@@ -5,3 +5,3 @@ /*global global, prettydiff*/ | ||
const style = function beautify_style(options:any):string { | ||
const data:parsedArray = options.parsed, | ||
const data:data = options.parsed, | ||
lf:"\r\n"|"\n" = (options.crlf === true) | ||
@@ -8,0 +8,0 @@ ? "\r\n" |
@@ -7,3 +7,3 @@ declare var options: any; | ||
interface Global { | ||
parseFramework: any; | ||
sparser: any; | ||
prettydiff: any | ||
@@ -15,4 +15,4 @@ } | ||
type languageAuto = [string, string, string]; | ||
type lexer = "markup" | "script" | "style"; | ||
type mode = "analysis" | "beautify" | "diff" | "minify" | "parse"; | ||
type lexer = "any" | "markup" | "script" | "style"; | ||
type mode = "beautify" | "diff" | "minify" | "parse"; | ||
type qualifier = "begins" | "contains" | "ends" | "file begins" | "file contains" | "file ends" | "file is" | "file not" | "file not contains" | "filesystem contains" | "filesystem not contains" | "is" | "not" | "not contains"; | ||
@@ -31,2 +31,11 @@ interface commandList { | ||
} | ||
interface data { | ||
begin: number[]; | ||
ender: number[]; | ||
lexer: string[]; | ||
lines: number[]; | ||
stack: string[]; | ||
token: string[]; | ||
types: string[]; | ||
} | ||
interface diffJSON extends Array<["+"|"-"|"=", string]|["r", string, string]> { | ||
@@ -46,2 +55,5 @@ [index:number]: ["+"|"-"|"=", string]|["r", string, string]; | ||
} | ||
interface diffview { | ||
(): [string, number, number] | ||
} | ||
interface dom { | ||
@@ -58,5 +70,2 @@ [key: string]: any; | ||
} | ||
interface diffview { | ||
(): [string, number, number] | ||
} | ||
interface externalIndex { | ||
@@ -132,2 +141,3 @@ [key: string]: number; | ||
property: "eachkey" | string; | ||
total: boolean; | ||
} | ||
@@ -143,3 +153,3 @@ interface opcodes extends Array<codes> { | ||
lexer: lexer; | ||
mode: mode; | ||
mode: "any" | mode; | ||
type: "boolean" | "number" | "string"; | ||
@@ -157,24 +167,2 @@ values?: { | ||
} | ||
interface parsedArray { | ||
begin: number[]; | ||
lexer: string[]; | ||
lines: number[]; | ||
presv: boolean[]; | ||
stack: string[]; | ||
token: string[]; | ||
types: string[]; | ||
} | ||
interface parsedObject { | ||
[index: number]: record; | ||
} | ||
interface parseOptions { | ||
lexer: "string"; | ||
lexerOptions: { | ||
[key: string]: { | ||
[key: string]: any; | ||
} | ||
}; | ||
outputFormat: "objects" | "arrays"; | ||
source: "string"; | ||
} | ||
interface performance { | ||
@@ -199,5 +187,5 @@ codeLength: number; | ||
begin: number; | ||
ender: number; | ||
lexer: string; | ||
lines: number; | ||
presv: boolean; | ||
stack: string; | ||
@@ -218,3 +206,3 @@ token: string; | ||
interface Window { | ||
parseFramework: any; | ||
sparser: any; | ||
} |
@@ -35,5 +35,5 @@ /*global global*/ | ||
values: { | ||
"collapse": "Sets options.formatObject to 'indent' and options.neverflatten to true.", | ||
"collapse-preserve-inline": "Sets options.bracepadding to true and options.formatObject to 'inline'.", | ||
"expand": "Sets options.braces to true, options.formatObject to 'indent', and options.never" + | ||
"collapse": "Sets options.format_object to 'indent' and options.neverflatten to true.", | ||
"collapse-preserve-inline": "Sets options.bracepadding to true and options.format_object to 'inline'.", | ||
"expand": "Sets options.braces to true, options.format_object to 'indent', and options.never" + | ||
"flatten to true.", | ||
@@ -102,3 +102,3 @@ "none": "Ignores this option" | ||
label: "Compressed CSS", | ||
lexer: "css", | ||
lexer: "style", | ||
mode: "beautify", | ||
@@ -151,3 +151,3 @@ type: "boolean" | ||
label: "Insert Empty Lines", | ||
lexer: "css", | ||
lexer: "style", | ||
mode: "beautify", | ||
@@ -154,0 +154,0 @@ type: "boolean" |
@@ -430,6 +430,6 @@ /*global global, prettydiff*/ | ||
} | ||
else if (options.wrap > 0) { | ||
else if (options.wrap > 0 && (data.types[a].indexOf("template") < 0 || (next < c && data.types[a].indexOf("template") > -1 && data.types[next].indexOf("template") < 0))) { | ||
content(); | ||
} | ||
else if (next < c && (data.types[next].indexOf("end") > -1 || data.types[next].indexOf("start") > -1) && data.lines[next] > 0) { | ||
else if (next < c && (data.types[next].indexOf("end") > -1 || data.types[next].indexOf("start") > -1) && (data.lines[next] > 0 || data.types[next].indexOf("template_") > -1)) { | ||
level.push(indent); | ||
@@ -476,2 +476,6 @@ } | ||
} | ||
else if (data.types[a] === "template_else") { | ||
level[a - 1] = indent - 1; | ||
level.push(indent); | ||
} | ||
else { | ||
@@ -478,0 +482,0 @@ level.push(indent); |
@@ -199,3 +199,3 @@ /*global global, prettydiff*/ | ||
count = count + data.token[a].length; | ||
if ((data.types[a] === "template" || data.types[a] === "template_start") && data.types[a - 1] === "content" && data.presv[a - 1] === true && options.mode === "minify" && levels[a] === -20) { | ||
if ((data.types[a] === "template" || data.types[a] === "template_start") && data.types[a - 1] === "content" && options.mode === "minify" && levels[a] === -20) { | ||
build.push(" "); | ||
@@ -202,0 +202,0 @@ count = count + 1; |
@@ -47,3 +47,3 @@ // tests structure | ||
qualifier: "is", | ||
test: "ewogICAgImNvbXBpbGVyT3B0aW9ucyI6IHsKICAgICAgICAidGFyZ2V0IjogIkVTNiIsCiAgICAgICAgIm91dERpciI6ICJqcyIKICAgIH0sCiAgICAiaW5jbHVkZSI6IFsKICAgICAgICAiKi50cyIsCiAgICAgICAgIioqLyoudHMiCiAgICBdLAogICAgImV4Y2x1ZGUiOiBbCiAgICAgICAgIjIiLAogICAgICAgICIzIiwKICAgICAgICAianMiLAogICAgICAgICJub2RlX21vZHVsZXMiLAogICAgICAgICJwYXJzZS1mcmFtZXdvcmsiLAogICAgICAgICJ0ZXN0IgogICAgXQp9" | ||
test: "ewogICAgImNvbXBpbGVyT3B0aW9ucyI6IHsKICAgICAgICAidGFyZ2V0IjogIkVTNiIsCiAgICAgICAgIm91dERpciI6ICJqcyIKICAgIH0sCiAgICAiaW5jbHVkZSI6IFsKICAgICAgICAiKi50cyIsCiAgICAgICAgIioqLyoudHMiCiAgICBdLAogICAgImV4Y2x1ZGUiOiBbCiAgICAgICAgIjIiLAogICAgICAgICIzIiwKICAgICAgICAianMiLAogICAgICAgICJub2RlX21vZHVsZXMiLAogICAgICAgICJ0ZXN0IgogICAgXQp9" | ||
}, | ||
@@ -100,3 +100,3 @@ { | ||
qualifier: "is", | ||
test: `{\n "compilerOptions": {\n "target": "ES6",\n "outDir": "js"\n },\n "include": [\n "*.ts", "*\u002a/*.ts"\n ],\n "exclude": [\n "2",\n "3",\n "js",\n "node_modules",\n "parse-framework",\n "test"\n ]\n}` | ||
test: `{\n "compilerOptions": {\n "target": "ES6",\n "outDir": "js"\n },\n "include": [\n "*.ts", "*\u002a/*.ts"\n ],\n "exclude": ["2", "3", "js", "node_modules", "test"]\n}` | ||
}, | ||
@@ -224,3 +224,3 @@ { | ||
{ | ||
command: `directory ".${supersep}" ignore ["node_modules", ".git", ".DS_Store", "2", "3", "beta", "ignore", "parse-framework"] --verbose`, | ||
command: `directory ".${supersep}" ignore ["node_modules", ".git", ".DS_Store", "2", "3", "beta", "ignore", "sparser"] --verbose`, | ||
qualifier: "contains", | ||
@@ -287,16 +287,16 @@ test: ` matching items from address ` | ||
qualifier: "contains", | ||
test: "parse-framework version " | ||
test: "Sparser version " | ||
}, | ||
{ | ||
command: `hash ${projectPath} list ignore ["node_modules", ".git", ".DS_Store", "2", "3", "beta", "ignore", "parse-framework"]`, | ||
command: `hash ${projectPath} list ignore ["node_modules", ".git", ".DS_Store", "2", "3", "beta", "ignore", "sparser"]`, | ||
qualifier: "contains", | ||
test: `tsconfig.json":"6f0e7b04ffb4e60164904713bb402821076f073249ae742412c5aeedb8994f2dca5f67b3abc0cc69a95e26f532051b0f3fbd4a5d0654a81475c866d397b96323"` | ||
test: `tsconfig.json":"8a02e6b682f96515abedc9f30096f2f3fce41fbe08e4b0400323f5fbd4b92cdd6a00b8515b25ca7c06d7840c71c08f1b00b070a068342a911939a1e21ef09a94"` | ||
}, | ||
{ | ||
command: `hash ${projectPath} list ignore [.git, "node_modules", ".DS_Store", "2", "3", "beta", "ignore", "parse-framework", "tests", "js", "api", "beautify", "minify", "css", 'space test']`, | ||
command: `hash ${projectPath} list ignore [.git, "node_modules", ".DS_Store", "2", "3", "beta", "ignore", "sparser", "tests", "js", "api", "beautify", "minify", "css", 'space test']`, | ||
qualifier: "contains", | ||
test: `tsconfig.json":"6f0e7b04ffb4e60164904713bb402821076f073249ae742412c5aeedb8994f2dca5f67b3abc0cc69a95e26f532051b0f3fbd4a5d0654a81475c866d397b96323"` | ||
test: `tsconfig.json":"8a02e6b682f96515abedc9f30096f2f3fce41fbe08e4b0400323f5fbd4b92cdd6a00b8515b25ca7c06d7840c71c08f1b00b070a068342a911939a1e21ef09a94"` | ||
}, | ||
{ | ||
command: `hash ${projectPath} list ignore [.git, "node_modules", ".DS_Store", "2", "3", "beta", "ignore", "parse-framework", "tests", "js", "api", "beautify", "minify", "css", "space test", "test"]`, | ||
command: `hash ${projectPath} list ignore [.git, "node_modules", ".DS_Store", "2", "3", "beta", "ignore", "sparser", "tests", "js", "api", "beautify", "minify", "css", "space test", "test"]`, | ||
qualifier: "not contains", | ||
@@ -338,3 +338,3 @@ test: "api" | ||
qualifier: "is", | ||
test: `{"compilerOptions":{"target":"ES6","outDir":"js"},"include":["*.ts","*\u002a/*.ts"],"exclude":["2","3","js","node_modules","parse-framework","test"]}` | ||
test: `{"compilerOptions":{"target":"ES6","outDir":"js"},"include":["*.ts","*\u002a/*.ts"],"exclude":["2","3","js","node_modules","test"]}` | ||
}, | ||
@@ -358,3 +358,3 @@ { | ||
command: "opts 2", | ||
qualifier: "ends", | ||
qualifier: "contains", | ||
test: `${text.green}77${text.none} matching options.` | ||
@@ -370,3 +370,3 @@ }, | ||
qualifier: "not contains", | ||
test: "version" | ||
test: `${text.angry}* ${text.none + text.cyan}version` | ||
}, | ||
@@ -390,3 +390,3 @@ { | ||
command: "options lexer:script api:node", | ||
qualifier: "is", | ||
qualifier: "contains", | ||
test: `${text.angry}Pretty Diff has no options matching the query criteria.${text.none}` | ||
@@ -412,3 +412,3 @@ }, | ||
qualifier: "contains", | ||
test: `{"begin":[-1,0,0,0,3,3,3,3,3,3,3,3,0,0,0,0,15,15,15,15,0,0,0,0,23,23,23,23,23,23,23,23,23,23,23,23,0],"lexer":["script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script"],"lines":[0,2,0,1,2,0,1,0,2,0,1,2,0,2,0,1,2,0,2,2,0,2,0,1,2,0,2,0,2,0,2,0,2,0,2,2,2],"presv":[false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false],"stack":["global","object","object","object","object","object","object","object","object","object","object","object","object","object","object","object","array","array","array","array","object","object","object","object","array","array","array","array","array","array","array","array","array","array","array","array","object"],"token":["{","\\\u0022compilerOptions\\\u0022",":","{","\\\u0022target\\\u0022",":","\\\u0022ES6\\\u0022",",","\\\u0022outDir\\\u0022",":","\\\u0022js\\\u0022","}",",","\\\u0022include\\\u0022",":","[","\\\u0022*.ts\\\u0022",",","\\\u0022*\u002a/*.ts\\\u0022","]",",","\\\u0022exclude\\\u0022",":","[","\\\u00222\\\u0022",",","\\\u00223\\\u0022",",","\\\u0022js\\\u0022",",","\\\u0022node_modules\\\u0022",",","\\\u0022parse-framework\\\u0022",",","\\\u0022test\\\u0022","]","}"],"types":["start","string","operator","start","string","operator","string","separator","string","operator","string","end","separator","string","operator","start","string","separator","string","end","separator","string","operator","start","string","separator","string","separator","string","separator","string","separator","string","separator","string","end","end"]}` | ||
test: `{"begin":[-1,0,0,0,3,3,3,3,3,3,3,3,0,0,0,0,15,15,15,15,0,0,0,0,23,23,23,23,23,23,23,23,23,23,0],"ender":[34,34,34,11,11,11,11,11,11,11,11,11,34,34,34,19,19,19,19,19,34,34,34,33,33,33,33,33,33,33,33,33,33,33,34],"lexer":["script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script"],"lines":[0,2,0,1,2,0,1,0,2,0,1,2,0,2,0,1,2,0,2,2,0,2,0,1,2,0,2,0,2,0,2,0,2,2,2],"stack":["global","object","object","object","object","object","object","object","object","object","object","object","object","object","object","object","array","array","array","array","object","object","object","object","array","array","array","array","array","array","array","array","array","array","object"],"token":["{","\\"compilerOptions\\"",":","{","\\"target\\"",":","\\"ES6\\"",",","\\"outDir\\"",":","\\"js\\"","}",",","\\"include\\"",":","[","\\"*.ts\\"",",","\\"**/*.ts\\"","]",",","\\"exclude\\"",":","[","\\"2\\"",",","\\"3\\"",",","\\"js\\"",",","\\"node_modules\\"",",","\\"test\\"","]","}"],"types":["start","string","operator","start","string","operator","string","separator","string","operator","string","end","separator","string","operator","start","string","separator","string","end","separator","string","operator","start","string","separator","string","separator","string","separator","string","separator","string","end","end"]}` | ||
}, | ||
@@ -423,3 +423,3 @@ { | ||
qualifier: "contains", | ||
test: `index | begin | lexer | lines | presv | stack | types | token${eol}------|-------|--------|-------|-------|-------------|-------------|------${eol + text.green}0 | -1 | script | XXXX | false | global | start | {${text.none}` | ||
test: `index | begin | ender | lexer | lines | stack | types | token${eol}------|-------|-------|--------|-------|-------------|-------------|------${eol + text.green}0 | -1 | XXXX | script | XXXX | global | start | {${text.none}` | ||
}, | ||
@@ -431,3 +431,3 @@ { | ||
qualifier: "file is", | ||
test: `{"begin":[-1,0,0,0,3,3,3,3,3,3,3,3,0,0,0,0,15,15,15,15,0,0,0,0,23,23,23,23,23,23,23,23,23,23,23,23,0],"lexer":["script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script"],"lines":[0,2,0,1,2,0,1,0,2,0,1,2,0,2,0,1,2,0,2,2,0,2,0,1,2,0,2,0,2,0,2,0,2,0,2,2,2],"presv":[false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false],"stack":["global","object","object","object","object","object","object","object","object","object","object","object","object","object","object","object","array","array","array","array","object","object","object","object","array","array","array","array","array","array","array","array","array","array","array","array","object"],"token":["{","\\\u0022compilerOptions\\\u0022",":","{","\\\u0022target\\\u0022",":","\\\u0022ES6\\\u0022",",","\\\u0022outDir\\\u0022",":","\\\u0022js\\\u0022","}",",","\\\u0022include\\\u0022",":","[","\\\u0022*.ts\\\u0022",",","\\\u0022*\u002a/*.ts\\\u0022","]",",","\\\u0022exclude\\\u0022",":","[","\\\u00222\\\u0022",",","\\\u00223\\\u0022",",","\\\u0022js\\\u0022",",","\\\u0022node_modules\\\u0022",",","\\\u0022parse-framework\\\u0022",",","\\\u0022test\\\u0022","]","}"],"types":["start","string","operator","start","string","operator","string","separator","string","operator","string","end","separator","string","operator","start","string","separator","string","end","separator","string","operator","start","string","separator","string","separator","string","separator","string","separator","string","separator","string","end","end"]}` | ||
test: `{"begin":[-1,0,0,0,3,3,3,3,3,3,3,3,0,0,0,0,15,15,15,15,0,0,0,0,23,23,23,23,23,23,23,23,23,23,0],"ender":[34,34,34,11,11,11,11,11,11,11,11,11,34,34,34,19,19,19,19,19,34,34,34,33,33,33,33,33,33,33,33,33,33,33,34],"lexer":["script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script"],"lines":[0,2,0,1,2,0,1,0,2,0,1,2,0,2,0,1,2,0,2,2,0,2,0,1,2,0,2,0,2,0,2,0,2,2,2],"stack":["global","object","object","object","object","object","object","object","object","object","object","object","object","object","object","object","array","array","array","array","object","object","object","object","array","array","array","array","array","array","array","array","array","array","object"],"token":["{","\\"compilerOptions\\"",":","{","\\"target\\"",":","\\"ES6\\"",",","\\"outDir\\"",":","\\"js\\"","}",",","\\"include\\"",":","[","\\"*.ts\\"",",","\\"**/*.ts\\"","]",",","\\"exclude\\"",":","[","\\"2\\"",",","\\"3\\"",",","\\"js\\"",",","\\"node_modules\\"",",","\\"test\\"","]","}"],"types":["start","string","operator","start","string","operator","string","separator","string","operator","string","end","separator","string","operator","start","string","separator","string","end","separator","string","operator","start","string","separator","string","separator","string","separator","string","separator","string","end","end"]}` | ||
}, | ||
@@ -443,3 +443,3 @@ { | ||
qualifier: "is", | ||
test: `{"begin":[-1,0,0,0,3,3,3,3,3,3,3,3,0,0,0,0,15,15,15,15,0,0,0,0,23,23,23,23,23,23,23,23,23,23,23,23,0],"lexer":["script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script"],"lines":[0,2,0,1,2,0,1,0,2,0,1,2,0,2,0,1,2,0,2,2,0,2,0,1,2,0,2,0,2,0,2,0,2,0,2,2,2],"presv":[false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false],"stack":["global","object","object","object","object","object","object","object","object","object","object","object","object","object","object","object","array","array","array","array","object","object","object","object","array","array","array","array","array","array","array","array","array","array","array","array","object"],"token":["{","\\\u0022compilerOptions\\\u0022",":","{","\\\u0022target\\\u0022",":","\\\u0022ES6\\\u0022",",","\\\u0022outDir\\\u0022",":","\\\u0022js\\\u0022","}",",","\\\u0022include\\\u0022",":","[","\\\u0022*.ts\\\u0022",",","\\\u0022*\u002a/*.ts\\\u0022","]",",","\\\u0022exclude\\\u0022",":","[","\\\u00222\\\u0022",",","\\\u00223\\\u0022",",","\\\u0022js\\\u0022",",","\\\u0022node_modules\\\u0022",",","\\\u0022parse-framework\\\u0022",",","\\\u0022test\\\u0022","]","}"],"types":["start","string","operator","start","string","operator","string","separator","string","operator","string","end","separator","string","operator","start","string","separator","string","end","separator","string","operator","start","string","separator","string","separator","string","separator","string","separator","string","separator","string","end","end"]}` | ||
test: `{"begin":[-1,0,0,0,3,3,3,3,3,3,3,3,0,0,0,0,15,15,15,15,0,0,0,0,23,23,23,23,23,23,23,23,23,23,0],"ender":[34,34,34,11,11,11,11,11,11,11,11,11,34,34,34,19,19,19,19,19,34,34,34,33,33,33,33,33,33,33,33,33,33,33,34],"lexer":["script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script"],"lines":[0,2,0,1,2,0,1,0,2,0,1,2,0,2,0,1,2,0,2,2,0,2,0,1,2,0,2,0,2,0,2,0,2,2,2],"stack":["global","object","object","object","object","object","object","object","object","object","object","object","object","object","object","object","array","array","array","array","object","object","object","object","array","array","array","array","array","array","array","array","array","array","object"],"token":["{","\\"compilerOptions\\"",":","{","\\"target\\"",":","\\"ES6\\"",",","\\"outDir\\"",":","\\"js\\"","}",",","\\"include\\"",":","[","\\"*.ts\\"",",","\\"**/*.ts\\"","]",",","\\"exclude\\"",":","[","\\"2\\"",",","\\"3\\"",",","\\"js\\"",",","\\"node_modules\\"",",","\\"test\\"","]","}"],"types":["start","string","operator","start","string","operator","string","separator","string","operator","string","end","separator","string","operator","start","string","separator","string","end","separator","string","operator","start","string","separator","string","separator","string","separator","string","separator","string","end","end"]}` | ||
}, | ||
@@ -469,3 +469,3 @@ { | ||
qualifier: "is", | ||
test: `{"begin":[-1,-1],"lexer":["script","script"],"lines":[0,0],"presv":[false,false],"stack":["global","global"],"token":["tsconfig","x;"],"types":["word","separator"]}` | ||
test: `{"begin":[-1,-1],"ender":[-1,-1],"lexer":["script","script"],"lines":[0,0],"stack":["global","global"],"token":["tsconfig","x;"],"types":["word","separator"]}` | ||
}, | ||
@@ -520,3 +520,3 @@ { | ||
qualifier: "begins", | ||
test: `parse-framework version ${text.angry}` | ||
test: `Sparser version ${text.angry}` | ||
} | ||
@@ -523,0 +523,0 @@ ]; |
@@ -5,3 +5,3 @@ /*global global, prettydiff*/ | ||
const markup = function minify_markup(options:any):string { | ||
const data:parsedArray = options.parsed, | ||
const data:data = options.parsed, | ||
lexer:string = "markup", | ||
@@ -209,3 +209,3 @@ c:number = (options.end < 1 || options.end > data.token.length) | ||
count = count + data.token[a].length; | ||
if ((data.types[a] === "template" || data.types[a] === "template_start") && data.types[a - 1] === "content" && data.presv[a - 1] === true && options.mode === "minify" && levels[a] === -20) { | ||
if ((data.types[a] === "template" || data.types[a] === "template_start") && data.types[a - 1] === "content" && options.mode === "minify" && levels[a] === -20) { | ||
build.push(" "); | ||
@@ -212,0 +212,0 @@ count = count + 1; |
@@ -12,3 +12,3 @@ /*global global, prettydiff*/ | ||
}()); | ||
const data:parsedArray = options.parsed, | ||
const data:data = options.parsed, | ||
lf:"\r\n"|"\n" = (options.crlf === true) | ||
@@ -15,0 +15,0 @@ ? "\r\n" |
@@ -5,3 +5,3 @@ /*global global, prettydiff*/ | ||
const style = function minify_style(options:any):string { | ||
const data:parsedArray = options.parsed, | ||
const data:data = options.parsed, | ||
lf:"\r\n"|"\n" = (options.crlf === true) | ||
@@ -8,0 +8,0 @@ ? "\r\n" |
418
mode.ts
@@ -5,4 +5,3 @@ /*global global, window*/ | ||
const mode = function mode_(options:any, diffmeta?:diffmeta):string { | ||
let parseMethod:string = "parserArrays", | ||
globalAPI:any = (options.api === "dom") | ||
let globalAPI:any = (options.api === "dom") | ||
? window | ||
@@ -13,4 +12,10 @@ : global, | ||
const pdcomment = function mode_pdcomment(options:any):void { | ||
const ops:any = globalAPI.sparser.options; | ||
let sindex:number = options.source.search(/((\/(\*|\/))|<!--*)\s*prettydiff\.com/), | ||
dindex:number = options.diff.search(/((\/(\*|\/))|<!--*)\s*prettydiff\.com/); | ||
dindex:number = options.diff.search(/((\/(\*|\/))|<!--*)\s*prettydiff\.com/), | ||
a:number = 0, | ||
b:number = 0, | ||
keys:string[], | ||
def:any, | ||
len:number; | ||
// parses the prettydiff settings comment | ||
@@ -158,12 +163,12 @@ // | ||
op = [ops[a].slice(0, ops[a].indexOf(":")), ops[a].slice(ops[a].indexOf(":") + 1)]; | ||
} else if (global.prettydiff.api.optionDef[ops[a]] !== undefined && global.prettydiff.api.optionDef[ops[a]].type === "boolean") { | ||
} else if (globalAPI.prettydiff.api.optionDef[ops[a]] !== undefined && globalAPI.prettydiff.api.optionDef[ops[a]].type === "boolean") { | ||
options[ops[a]] = true; | ||
} | ||
if (op.length === 2 && global.prettydiff.api.optionDef[op[0]] !== undefined) { | ||
if (op.length === 2 && globalAPI.prettydiff.api.optionDef[op[0]] !== undefined) { | ||
if ((op[1].charAt(0) === "\"" || op[1].charAt(0) === "'" || op[1].charAt(0) === "`") && op[1].charAt(op[1].length - 1) === op[1].charAt(0)) { | ||
op[1] = op[1].slice(1, op[1].length - 1); | ||
} | ||
if (global.prettydiff.api.optionDef[op[0]].type === "number" && isNaN(Number(op[1])) === false) { | ||
if (globalAPI.prettydiff.api.optionDef[op[0]].type === "number" && isNaN(Number(op[1])) === false) { | ||
options[op[0]] = Number(op[1]); | ||
} else if (global.prettydiff.api.optionDef[op[0]].type === "boolean") { | ||
} else if (globalAPI.prettydiff.api.optionDef[op[0]].type === "boolean") { | ||
if (op[1] === "true") { | ||
@@ -175,7 +180,7 @@ options[op[0]] = true; | ||
} else { | ||
if (global.prettydiff.api.optionDef[op[0]].values !== undefined) { | ||
b = global.prettydiff.api.optionDef[op[0]].values.length; | ||
if (globalAPI.prettydiff.api.optionDef[op[0]].values !== undefined) { | ||
b = globalAPI.prettydiff.api.optionDef[op[0]].values.length; | ||
do { | ||
b = b - 1; | ||
if (global.prettydiff.api.optionDef[op[0]].values[b] === op[1]) { | ||
if (globalAPI.prettydiff.api.optionDef[op[0]].values[b] === op[1]) { | ||
options[op[0]] = op[1]; | ||
@@ -193,2 +198,159 @@ break; | ||
} | ||
if (options.api === "dom") { | ||
globalAPI = window; | ||
} | ||
if (options.mode === "diff") { | ||
modeValue = "beautify"; | ||
} | ||
if (options.mode === "minify" && options.minify_wrap === false) { | ||
options.wrap = -1; | ||
} | ||
if (options.lexer === "script") { | ||
let styleguide = { | ||
airbnb: function beautify_script_options_styleairbnb() { | ||
options.brace_padding = true; | ||
options.correct = true; | ||
options.lexerOptions.script.end_comma = "always"; | ||
options.indent_char = " "; | ||
options.indent_size = 2; | ||
options.preserve = 1; | ||
options.quote_convert = "single"; | ||
options.variable_list = "each"; | ||
options.wrap = 80; | ||
}, | ||
crockford: function beautify_script_options_stylecrockford() { | ||
options.brace_padding = false; | ||
options.correct = true; | ||
options.else_line = false; | ||
options.lexerOptions.script.end_comma = "never"; | ||
options.indent_char = " "; | ||
options.indent_size = 4; | ||
options.no_case_indent = true; | ||
options.space = true; | ||
options.variable_list = "each"; | ||
options.vertical = false; | ||
}, | ||
google: function beautify_script_options_stylegoogle() { | ||
options.correct = true; | ||
options.indent_char = " "; | ||
options.indent_size = 4; | ||
options.preserve = 1; | ||
options.quote_convert = "single"; | ||
options.vertical = false; | ||
options.wrap = -1; | ||
}, | ||
jquery: function beautify_script_options_stylejquery() { | ||
options.brace_padding = true; | ||
options.correct = true; | ||
options.indent_char = "\u0009"; | ||
options.indent_size = 1; | ||
options.quote_convert = "double"; | ||
options.variable_list = "each"; | ||
options.wrap = 80; | ||
}, | ||
jslint: function beautify_script_options_stylejslint() { | ||
options.brace_padding = false; | ||
options.correct = true; | ||
options.else_line = false; | ||
options.lexerOptions.script.end_comma = "never"; | ||
options.indent_char = " "; | ||
options.indent_size = 4; | ||
options.no_case_indent = true; | ||
options.space = true; | ||
options.variable_list = "each"; | ||
options.vertical = false; | ||
}, | ||
mrdoobs: function beautify_script_options_stylemrdoobs() { | ||
options.brace_line = true; | ||
options.brace_padding = true; | ||
options.correct = true; | ||
options.indent_char = "\u0009"; | ||
options.indent_size = 1; | ||
options.vertical = false; | ||
}, | ||
mediawiki: function beautify_script_options_stylemediawiki() { | ||
options.brace_padding = true; | ||
options.correct = true; | ||
options.indent_char = "\u0009"; | ||
options.indent_size = 1; | ||
options.preserve = 1; | ||
options.quote_convert = "single"; | ||
options.space = false; | ||
options.wrap = 80; | ||
}, | ||
meteor: function beautify_script_options_stylemeteor() { | ||
options.correct = true; | ||
options.indent_char = " "; | ||
options.indent_size = 2; | ||
options.wrap = 80; | ||
}, | ||
yandex: function beautify_script_options_styleyandex() { | ||
options.brace_padding = false; | ||
options.correct = true; | ||
options.quote_convert = "single"; | ||
options.variable_list = "each"; | ||
options.vertical = false; | ||
} | ||
}, | ||
brace_style = { | ||
collapse: function beautify_brace_options_collapse() { | ||
options.brace_line = false; | ||
options.brace_padding = false; | ||
options.braces = false; | ||
options.format_object = "indent"; | ||
options.never_flatten = true; | ||
}, | ||
"collapse-preserve-inline": function beautify_brace_options_collapseInline() { | ||
options.brace_line = false; | ||
options.brace_padding = true; | ||
options.braces = false; | ||
options.format_object = "inline"; | ||
options.never_flatten = false; | ||
}, | ||
expand: function beautify_brace_options_expand() { | ||
options.brace_line = false; | ||
options.brace_padding = false; | ||
options.braces = true; | ||
options.format_object = "indent"; | ||
options.never_flatten = true; | ||
} | ||
}; | ||
if (styleguide[options.styleguide] !== undefined) { | ||
styleguide[options.styleguide](); | ||
} | ||
if (brace_style[options.brace_style] !== undefined) { | ||
brace_style[options.brace_style](); | ||
} | ||
if (options.language === "json") { | ||
options.wrap = 0; | ||
} else if (options.language === "titanium") { | ||
options.correct = false; | ||
} | ||
if (options.language !== "javascript" && options.language !== "typescript" && options.language !== "jsx") { | ||
options.jsscope = "none"; | ||
} | ||
} | ||
if (options.lexer !== "markup" || options.language === "text") { | ||
options.diff_rendered_html = false; | ||
} else if (options.api === "node" && options.read_method !== "file") { | ||
options.diff_rendered_html = false; | ||
} | ||
def = globalAPI.sparser.libs.optionDef; | ||
keys = Object.keys(def); | ||
len = keys.length; | ||
do { | ||
if (options[keys[a]] !== undefined) { | ||
if (def[keys[a]].lexer[0] === "all") { | ||
ops[keys[a]] = options[keys[a]]; | ||
} else { | ||
b = def[keys[a]].lexer.length; | ||
do { | ||
b = b - 1; | ||
ops.lexer_options[def[keys[a]].lexer[b]][keys[a]] = options[keys[a]]; | ||
} while (b > 0); | ||
} | ||
} | ||
a = a + 1; | ||
} while (a < len); | ||
}, | ||
@@ -218,3 +380,3 @@ // prettydiff file insertion start | ||
: options.language_default; | ||
let lang:[string, string, string] = prettydiff.api.language.auto(options.source, def); | ||
let lang:[string, string, string] = globalAPI.prettydiff.api.language.auto(options.source, def); | ||
if (lang[0] === "text") { | ||
@@ -229,181 +391,12 @@ if (options.mode === "diff") { | ||
} | ||
options.language = lang[0]; | ||
options.lexer = lang[1]; | ||
options.language_name = lang[2]; | ||
if (options.language === "auto") { | ||
options.language = lang[0]; | ||
options.language_name = lang[2]; | ||
} | ||
if (options.lexer === "auto") { | ||
options.lexer = lang[1]; | ||
} | ||
} | ||
pdcomment(options); | ||
if (options.api === "dom") { | ||
globalAPI = window; | ||
} | ||
if (options.mode === "parse" && options.parse_format === "sequential") { | ||
parseMethod = "parserObjects"; | ||
} | ||
if (options.mode === "diff") { | ||
modeValue = "beautify"; | ||
} | ||
if (options.mode === "minify" && options.minify_wrap === false) { | ||
options.wrap = -1; | ||
} | ||
if (options.lexer === "script") { | ||
let styleguide = { | ||
airbnb: function beautify_script_options_styleairbnb() { | ||
options.brace_padding = true; | ||
options.correct = true; | ||
options.lexerOptions.script.end_comma = "always"; | ||
options.indent_char = " "; | ||
options.indent_size = 2; | ||
options.preserve = 1; | ||
options.quote_convert = "single"; | ||
options.variable_list = "each"; | ||
options.wrap = 80; | ||
}, | ||
crockford: function beautify_script_options_stylecrockford() { | ||
options.brace_padding = false; | ||
options.correct = true; | ||
options.else_line = false; | ||
options.lexerOptions.script.end_comma = "never"; | ||
options.indent_char = " "; | ||
options.indent_size = 4; | ||
options.no_case_indent = true; | ||
options.space = true; | ||
options.variable_list = "each"; | ||
options.vertical = false; | ||
}, | ||
google: function beautify_script_options_stylegoogle() { | ||
options.correct = true; | ||
options.indent_char = " "; | ||
options.indent_size = 4; | ||
options.preserve = 1; | ||
options.quote_convert = "single"; | ||
options.vertical = false; | ||
options.wrap = -1; | ||
}, | ||
jquery: function beautify_script_options_stylejquery() { | ||
options.brace_padding = true; | ||
options.correct = true; | ||
options.indent_char = "\u0009"; | ||
options.indent_size = 1; | ||
options.quote_convert = "double"; | ||
options.variable_list = "each"; | ||
options.wrap = 80; | ||
}, | ||
jslint: function beautify_script_options_stylejslint() { | ||
options.brace_padding = false; | ||
options.correct = true; | ||
options.else_line = false; | ||
options.lexerOptions.script.end_comma = "never"; | ||
options.indent_char = " "; | ||
options.indent_size = 4; | ||
options.no_case_indent = true; | ||
options.space = true; | ||
options.variable_list = "each"; | ||
options.vertical = false; | ||
}, | ||
mrdoobs: function beautify_script_options_stylemrdoobs() { | ||
options.brace_line = true; | ||
options.brace_padding = true; | ||
options.correct = true; | ||
options.indent_char = "\u0009"; | ||
options.indent_size = 1; | ||
options.vertical = false; | ||
}, | ||
mediawiki: function beautify_script_options_stylemediawiki() { | ||
options.brace_padding = true; | ||
options.correct = true; | ||
options.indent_char = "\u0009"; | ||
options.indent_size = 1; | ||
options.preserve = 1; | ||
options.quote_convert = "single"; | ||
options.space = false; | ||
options.wrap = 80; | ||
}, | ||
meteor: function beautify_script_options_stylemeteor() { | ||
options.correct = true; | ||
options.indent_char = " "; | ||
options.indent_size = 2; | ||
options.wrap = 80; | ||
}, | ||
yandex: function beautify_script_options_styleyandex() { | ||
options.brace_padding = false; | ||
options.correct = true; | ||
options.quote_convert = "single"; | ||
options.variable_list = "each"; | ||
options.vertical = false; | ||
} | ||
}, | ||
brace_style = { | ||
collapse: function beautify_brace_options_collapse() { | ||
options.brace_line = false; | ||
options.brace_padding = false; | ||
options.braces = false; | ||
options.format_object = "indent"; | ||
options.never_flatten = true; | ||
}, | ||
"collapse-preserve-inline": function beautify_brace_options_collapseInline() { | ||
options.brace_line = false; | ||
options.brace_padding = true; | ||
options.braces = false; | ||
options.format_object = "inline"; | ||
options.never_flatten = false; | ||
}, | ||
expand: function beautify_brace_options_expand() { | ||
options.brace_line = false; | ||
options.brace_padding = false; | ||
options.braces = true; | ||
options.format_object = "indent"; | ||
options.never_flatten = true; | ||
} | ||
}; | ||
if (styleguide[options.styleguide] !== undefined) { | ||
styleguide[options.styleguide](); | ||
} | ||
if (brace_style[options.brace_style] !== undefined) { | ||
brace_style[options.brace_style](); | ||
} | ||
if (options.language === "json") { | ||
options.wrap = 0; | ||
} else if (options.language === "titanium") { | ||
options.correct = false; | ||
} | ||
if (options.language !== "javascript" && options.language !== "typescript" && options.language !== "jsx") { | ||
options.jsscope = "none"; | ||
} | ||
} | ||
if (options.lexer !== "markup" || options.language === "text") { | ||
options.diff_rendered_html = false; | ||
} else if (options.api === "node" && options.read_method !== "file") { | ||
options.diff_rendered_html = false; | ||
} | ||
if (typeof options.lexerOptions !== "object") { | ||
options.lexerOptions = {}; | ||
} | ||
if (typeof options.lexerOptions.script !== "object") { | ||
options.lexerOptions.script = {}; | ||
} | ||
if (typeof options.lexerOptions.style !== "object") { | ||
options.lexerOptions.style = {}; | ||
} | ||
if (typeof options.lexerOptions.markup !== "object") { | ||
options.lexerOptions.markup = {}; | ||
} | ||
options.lexerOptions.markup.quote_convert = options.quote_convert; | ||
options.lexerOptions.script.quote_convert = options.quote_convert; | ||
options.lexerOptions.style.quote_convert = options.quote_convert; | ||
if (options.lexerOptions[options.lexer] !== undefined) { | ||
options.lexerOptions.markup.tagSort = options.tag_sort; | ||
options.lexerOptions.script.objectSort = options.object_sort; | ||
options.lexerOptions.style.objectSort = options.object_sort; | ||
} | ||
if (options.tag_merge === true && options.unformatted === false) { | ||
options.lexerOptions.markup.tag_merge = true; | ||
} | ||
if (options.preserve_text === true) { | ||
options.lexerOptions.markup.preserve_text = true; | ||
} | ||
options.lexerOptions.script.varword = options.variable_list; | ||
options.lexerOptions.style.no_lead_zero = options.no_lead_zero; | ||
options.lexerOptions.markup.tagSort = options.tag_sort; | ||
options.lexerOptions.script.end_comma = options.end_comma; | ||
if (options.mode === "parse") { | ||
@@ -417,3 +410,3 @@ const parse_format = (options.parse_format === "htmltable") | ||
options.parsed = globalAPI.parseFramework[parseMethod](options); | ||
options.parsed = globalAPI.sparser.parser(); | ||
if (parse_format === "table") { | ||
@@ -468,3 +461,3 @@ if (api === "dom") { | ||
const os = require("os"), | ||
outputArrays:parsedArray = options.parsed, | ||
outputArrays:data = options.parsed, | ||
nodeText:any = { | ||
@@ -499,4 +492,4 @@ angry : "\u001b[1m\u001b[31m", | ||
}, | ||
heading:string = "index | begin | lexer | lines | presv | stack | types | token", | ||
bar:string = "------|-------|--------|-------|-------|-------------|-------------|------"; | ||
heading:string = "index | begin | ender | lexer | lines | stack | types | token", | ||
bar:string = "------|-------|-------|--------|-------|-------------|-------------|------"; | ||
output.push(""); | ||
@@ -521,5 +514,5 @@ output.push(heading); | ||
pad(outputArrays.begin[a].toString(), 5); | ||
pad(outputArrays.ender[a].toString(), 5); | ||
pad(outputArrays.lexer[a].toString(), 5); | ||
pad(outputArrays.lines[a].toString(), 5); | ||
pad(outputArrays.presv[a].toString(), 5); | ||
pad(outputArrays.stack[a].toString(), 11); | ||
@@ -538,8 +531,7 @@ pad(outputArrays.types[a].toString(), 11); | ||
} else { | ||
global.prettydiff.scopes = []; | ||
if (global.prettydiff[modeValue][options.lexer] === undefined && ((options.mode !== "diff" && options.language === "text") || options.language !== "text")) { | ||
globalAPI.prettydiff.scopes = []; | ||
if (globalAPI.prettydiff[modeValue][options.lexer] === undefined && ((options.mode !== "diff" && options.language === "text") || options.language !== "text")) { | ||
result = `Error: Library prettydiff.${modeValue}.${options.lexer} does not exist.`; | ||
} else if (options.mode === "diff") { | ||
let diffoutput:[string, number, number]; | ||
const source:string = options.source; | ||
@@ -550,3 +542,3 @@ if (options.diff_format === "json") { | ||
if (options.language === "text") { | ||
diffoutput = global.prettydiff.api.diffview(options); | ||
diffoutput = globalAPI.prettydiff.api.diffview(options); | ||
result = diffoutput[0]; | ||
@@ -667,3 +659,3 @@ } else { | ||
}; | ||
let diff_parsed:parsedArray, | ||
let diff_parsed:data, | ||
json:any, | ||
@@ -676,9 +668,8 @@ a:number = 0, | ||
options.diff_format = "json"; | ||
options.source = options.diff; | ||
diff_parsed = globalAPI.parseFramework[parseMethod](options); | ||
options.parsed = globalAPI.sparser.parser(); | ||
options.source = options.parsed.token; | ||
globalAPI.sparser.options.source = options.diff; | ||
diff_parsed = globalAPI.sparser.parser(); | ||
options.diff = diff_parsed.token; | ||
options.source = source; | ||
options.parsed = globalAPI.parseFramework[parseMethod](options); | ||
options.source = options.parsed.token; | ||
diffoutput = global.prettydiff.api.diffview(options); | ||
diffoutput = globalAPI.prettydiff.api.diffview(options); | ||
json = JSON.parse(diffoutput[0]).diff; | ||
@@ -725,14 +716,13 @@ len = json.length; | ||
summary(); | ||
result = global.prettydiff.beautify.markup(options); | ||
result = globalAPI.prettydiff.beautify.markup(options); | ||
} else { | ||
// this silliness is required because the other libraries only recognize the 'source' option and not the 'diff' option but need to be equally modified | ||
options.source = options.diff; | ||
options.parsed = globalAPI.parseFramework[parseMethod](options); | ||
options.diff = global.prettydiff.beautify[options.lexer](options); | ||
options.parsed = globalAPI.sparser.parser(); | ||
options.source = globalAPI.prettydiff.beautify[options.lexer](options); | ||
//options.source = options.parsed.token; | ||
globalAPI.sparser.options.source = options.diff; | ||
options.parsed = globalAPI.sparser.parser(); | ||
options.diff = globalAPI.prettydiff.beautify[options.lexer](options); | ||
//options.diff = options.parsed.token; | ||
options.source = source; | ||
options.parsed = globalAPI.parseFramework[parseMethod](options); | ||
options.source = global.prettydiff.beautify[options.lexer](options); | ||
//options.source = options.parsed.token; | ||
diffoutput = global.prettydiff.api.diffview(options); | ||
diffoutput = globalAPI.prettydiff.api.diffview(options); | ||
result = diffoutput[0]; | ||
@@ -746,4 +736,4 @@ } | ||
} else { | ||
options.parsed = globalAPI.parseFramework[parseMethod](options); | ||
result = global.prettydiff[modeValue][options.lexer](options); | ||
options.parsed = globalAPI.sparser.parser(); | ||
result = globalAPI.prettydiff[modeValue][options.lexer](options); | ||
} | ||
@@ -750,0 +740,0 @@ } |
@@ -38,5 +38,5 @@ # Pretty Diff Options | ||
### Value Definitions | ||
* **collapse** - Sets options.formatObject to 'indent' and options.neverflatten to true. | ||
* **collapse-preserve-inline** - Sets options.bracepadding to true and options.formatObject to 'inline'. | ||
* **expand** - Sets options.braces to true, options.formatObject to 'indent', and options.neverflatten to true. | ||
* **collapse** - Sets options.format_object to 'indent' and options.neverflatten to true. | ||
* **collapse-preserve-inline** - Sets options.bracepadding to true and options.format_object to 'inline'. | ||
* **expand** - Sets options.braces to true, options.format_object to 'indent', and options.neverflatten to true. | ||
* **none** - Ignores this option | ||
@@ -112,3 +112,3 @@ | ||
label | Compressed CSS | ||
lexer | css | ||
lexer | style | ||
mode | beautify | ||
@@ -168,3 +168,3 @@ type | boolean | ||
label | Insert Empty Lines | ||
lexer | css | ||
lexer | style | ||
mode | beautify | ||
@@ -171,0 +171,0 @@ type | boolean |
@@ -8,9 +8,9 @@ { | ||
"dependencies": { | ||
"@types/node": "^10.12.18", | ||
"@types/node": "^10.12.27", | ||
"file-saver": "^1.3.8", | ||
"parse-framework": "^2.5.4" | ||
"sparser": "^1.0.3" | ||
}, | ||
"description": "A language aware diff tool.", | ||
"devDependencies": { | ||
"ace-builds": "^1.4.2", | ||
"ace-builds": "^1.4.3", | ||
"ws": "^5.2.2" | ||
@@ -43,3 +43,3 @@ }, | ||
}, | ||
"version": "100.1.7" | ||
"version": "100.2.0" | ||
} |
@@ -26,6 +26,3 @@ # Pretty Diff version 100 | ||
``` | ||
npm install typescript -g | ||
npm install eslint -g | ||
npm install prettydiff -g | ||
prettydiff build | ||
``` | ||
@@ -44,3 +41,7 @@ | ||
### Global install with NPM | ||
The instructions for installing Pretty Diff globally via NPM do not indicate installing ESLint or Typescript, but the build and test commands will not work without them. | ||
``` | ||
npm install -g typescript | ||
npm install -g eslint | ||
prettydiff test | ||
@@ -47,0 +48,0 @@ ``` |
@@ -11,3 +11,5 @@ <ul> | ||
{% switch variable %} | ||
{% case "value1" %} {% case "value2" %} {% default %} | ||
{% case "value1" %} | ||
{% case "value2" %} | ||
{% default %} | ||
{% endswitch %} | ||
@@ -14,0 +16,0 @@ {% some other statement %} |
<!--/*prettydiff.com wrap:40*/--> | ||
<mvc:view controllername="sapui5.controller.alex" xmlns:core="sap.ui.core" xmlns:html="http://www.w3.org/1999/xhtml" xmlns:mvc="sap.ui.core.mvc" xmlns="sap.m"> | ||
<mvc:view | ||
controllername="sapui5.controller.alex" | ||
xmlns:core="sap.ui.core" | ||
xmlns:html="http://www.w3.org/1999/xhtml" | ||
xmlns:mvc="sap.ui.core.mvc" | ||
xmlns="sap.m"> | ||
<app> | ||
@@ -4,0 +9,0 @@ <pages> |
@@ -67,7 +67,5 @@ function jspretty__tokenize() { | ||
render() { | ||
return ( | ||
<div>Hello World</div> | ||
); | ||
return (<div>Hello World</div>); | ||
} | ||
} | ||
}; |
@@ -42,7 +42,5 @@ function jspretty__tokenize() { | ||
render() { | ||
return ( | ||
<div>Hello World</div> | ||
); | ||
return (<div>Hello World</div>); | ||
} | ||
} | ||
}; |
@@ -72,7 +72,5 @@ function jspretty__tokenize() { | ||
render() { | ||
return ( | ||
<div>Hello World</div> | ||
); | ||
return (<div>Hello World</div>); | ||
} | ||
} | ||
}; |
@@ -37,7 +37,5 @@ function jspretty__tokenize() { | ||
render() { | ||
return ( | ||
<div>Hello World</div> | ||
); | ||
return (<div>Hello World</div>); | ||
} | ||
} | ||
}; |
@@ -79,7 +79,5 @@ function jspretty__tokenize() { | ||
render() { | ||
return ( | ||
<div>Hello World</div> | ||
); | ||
return (<div>Hello World</div>); | ||
} | ||
} | ||
}; |
@@ -54,3 +54,3 @@ | ||
qualifier: "is", | ||
test: "ewogICAgImNvbXBpbGVyT3B0aW9ucyI6IHsKICAgICAgICAidGFyZ2V0IjogIkVTNiIsCiAgICAgICAgIm91dERpciI6ICJqcyIKICAgIH0sCiAgICAiaW5jbHVkZSI6IFsKICAgICAgICAiKi50cyIsCiAgICAgICAgIioqLyoudHMiCiAgICBdLAogICAgImV4Y2x1ZGUiOiBbCiAgICAgICAgIjIiLAogICAgICAgICIzIiwKICAgICAgICAianMiLAogICAgICAgICJub2RlX21vZHVsZXMiLAogICAgICAgICJwYXJzZS1mcmFtZXdvcmsiLAogICAgICAgICJ0ZXN0IgogICAgXQp9" | ||
test: "ewogICAgImNvbXBpbGVyT3B0aW9ucyI6IHsKICAgICAgICAidGFyZ2V0IjogIkVTNiIsCiAgICAgICAgIm91dERpciI6ICJqcyIKICAgIH0sCiAgICAiaW5jbHVkZSI6IFsKICAgICAgICAiKi50cyIsCiAgICAgICAgIioqLyoudHMiCiAgICBdLAogICAgImV4Y2x1ZGUiOiBbCiAgICAgICAgIjIiLAogICAgICAgICIzIiwKICAgICAgICAianMiLAogICAgICAgICJub2RlX21vZHVsZXMiLAogICAgICAgICJ0ZXN0IgogICAgXQp9" | ||
}, | ||
@@ -107,3 +107,3 @@ { | ||
qualifier: "is", | ||
test: `{\n "compilerOptions": {\n "target": "ES6",\n "outDir": "js"\n },\n "include": [\n "*.ts", "*\u002a/*.ts"\n ],\n "exclude": [\n "2",\n "3",\n "js",\n "node_modules",\n "parse-framework",\n "test"\n ]\n}` | ||
test: `{\n "compilerOptions": {\n "target": "ES6",\n "outDir": "js"\n },\n "include": [\n "*.ts", "*\u002a/*.ts"\n ],\n "exclude": ["2", "3", "js", "node_modules", "test"]\n}` | ||
}, | ||
@@ -231,3 +231,3 @@ { | ||
{ | ||
command: `directory ".${supersep}" ignore ["node_modules", ".git", ".DS_Store", "2", "3", "beta", "ignore", "parse-framework"] --verbose`, | ||
command: `directory ".${supersep}" ignore ["node_modules", ".git", ".DS_Store", "2", "3", "beta", "ignore", "sparser"] --verbose`, | ||
qualifier: "contains", | ||
@@ -294,16 +294,16 @@ test: ` matching items from address ` | ||
qualifier: "contains", | ||
test: "parse-framework version " | ||
test: "Sparser version " | ||
}, | ||
{ | ||
command: `hash ${projectPath} list ignore ["node_modules", ".git", ".DS_Store", "2", "3", "beta", "ignore", "parse-framework"]`, | ||
command: `hash ${projectPath} list ignore ["node_modules", ".git", ".DS_Store", "2", "3", "beta", "ignore", "sparser"]`, | ||
qualifier: "contains", | ||
test: `tsconfig.json":"6f0e7b04ffb4e60164904713bb402821076f073249ae742412c5aeedb8994f2dca5f67b3abc0cc69a95e26f532051b0f3fbd4a5d0654a81475c866d397b96323"` | ||
test: `tsconfig.json":"8a02e6b682f96515abedc9f30096f2f3fce41fbe08e4b0400323f5fbd4b92cdd6a00b8515b25ca7c06d7840c71c08f1b00b070a068342a911939a1e21ef09a94"` | ||
}, | ||
{ | ||
command: `hash ${projectPath} list ignore [.git, "node_modules", ".DS_Store", "2", "3", "beta", "ignore", "parse-framework", "tests", "js", "api", "beautify", "minify", "css", 'space test']`, | ||
command: `hash ${projectPath} list ignore [.git, "node_modules", ".DS_Store", "2", "3", "beta", "ignore", "sparser", "tests", "js", "api", "beautify", "minify", "css", 'space test']`, | ||
qualifier: "contains", | ||
test: `tsconfig.json":"6f0e7b04ffb4e60164904713bb402821076f073249ae742412c5aeedb8994f2dca5f67b3abc0cc69a95e26f532051b0f3fbd4a5d0654a81475c866d397b96323"` | ||
test: `tsconfig.json":"8a02e6b682f96515abedc9f30096f2f3fce41fbe08e4b0400323f5fbd4b92cdd6a00b8515b25ca7c06d7840c71c08f1b00b070a068342a911939a1e21ef09a94"` | ||
}, | ||
{ | ||
command: `hash ${projectPath} list ignore [.git, "node_modules", ".DS_Store", "2", "3", "beta", "ignore", "parse-framework", "tests", "js", "api", "beautify", "minify", "css", "space test", "test"]`, | ||
command: `hash ${projectPath} list ignore [.git, "node_modules", ".DS_Store", "2", "3", "beta", "ignore", "sparser", "tests", "js", "api", "beautify", "minify", "css", "space test", "test"]`, | ||
qualifier: "not contains", | ||
@@ -345,3 +345,3 @@ test: "api" | ||
qualifier: "is", | ||
test: `{"compilerOptions":{"target":"ES6","outDir":"js"},"include":["*.ts","*\u002a/*.ts"],"exclude":["2","3","js","node_modules","parse-framework","test"]}` | ||
test: `{"compilerOptions":{"target":"ES6","outDir":"js"},"include":["*.ts","*\u002a/*.ts"],"exclude":["2","3","js","node_modules","test"]}` | ||
}, | ||
@@ -365,3 +365,3 @@ { | ||
command: "opts 2", | ||
qualifier: "ends", | ||
qualifier: "contains", | ||
test: `${text.green}77${text.none} matching options.` | ||
@@ -377,3 +377,3 @@ }, | ||
qualifier: "not contains", | ||
test: "version" | ||
test: `${text.angry}* ${text.none + text.cyan}version` | ||
}, | ||
@@ -397,3 +397,3 @@ { | ||
command: "options lexer:script api:node", | ||
qualifier: "is", | ||
qualifier: "contains", | ||
test: `${text.angry}Pretty Diff has no options matching the query criteria.${text.none}` | ||
@@ -419,3 +419,3 @@ }, | ||
qualifier: "contains", | ||
test: `{"begin":[-1,0,0,0,3,3,3,3,3,3,3,3,0,0,0,0,15,15,15,15,0,0,0,0,23,23,23,23,23,23,23,23,23,23,23,23,0],"lexer":["script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script"],"lines":[0,2,0,1,2,0,1,0,2,0,1,2,0,2,0,1,2,0,2,2,0,2,0,1,2,0,2,0,2,0,2,0,2,0,2,2,2],"presv":[false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false],"stack":["global","object","object","object","object","object","object","object","object","object","object","object","object","object","object","object","array","array","array","array","object","object","object","object","array","array","array","array","array","array","array","array","array","array","array","array","object"],"token":["{","\\\u0022compilerOptions\\\u0022",":","{","\\\u0022target\\\u0022",":","\\\u0022ES6\\\u0022",",","\\\u0022outDir\\\u0022",":","\\\u0022js\\\u0022","}",",","\\\u0022include\\\u0022",":","[","\\\u0022*.ts\\\u0022",",","\\\u0022*\u002a/*.ts\\\u0022","]",",","\\\u0022exclude\\\u0022",":","[","\\\u00222\\\u0022",",","\\\u00223\\\u0022",",","\\\u0022js\\\u0022",",","\\\u0022node_modules\\\u0022",",","\\\u0022parse-framework\\\u0022",",","\\\u0022test\\\u0022","]","}"],"types":["start","string","operator","start","string","operator","string","separator","string","operator","string","end","separator","string","operator","start","string","separator","string","end","separator","string","operator","start","string","separator","string","separator","string","separator","string","separator","string","separator","string","end","end"]}` | ||
test: `{"begin":[-1,0,0,0,3,3,3,3,3,3,3,3,0,0,0,0,15,15,15,15,0,0,0,0,23,23,23,23,23,23,23,23,23,23,0],"ender":[34,34,34,11,11,11,11,11,11,11,11,11,34,34,34,19,19,19,19,19,34,34,34,33,33,33,33,33,33,33,33,33,33,33,34],"lexer":["script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script"],"lines":[0,2,0,1,2,0,1,0,2,0,1,2,0,2,0,1,2,0,2,2,0,2,0,1,2,0,2,0,2,0,2,0,2,2,2],"stack":["global","object","object","object","object","object","object","object","object","object","object","object","object","object","object","object","array","array","array","array","object","object","object","object","array","array","array","array","array","array","array","array","array","array","object"],"token":["{","\\"compilerOptions\\"",":","{","\\"target\\"",":","\\"ES6\\"",",","\\"outDir\\"",":","\\"js\\"","}",",","\\"include\\"",":","[","\\"*.ts\\"",",","\\"**/*.ts\\"","]",",","\\"exclude\\"",":","[","\\"2\\"",",","\\"3\\"",",","\\"js\\"",",","\\"node_modules\\"",",","\\"test\\"","]","}"],"types":["start","string","operator","start","string","operator","string","separator","string","operator","string","end","separator","string","operator","start","string","separator","string","end","separator","string","operator","start","string","separator","string","separator","string","separator","string","separator","string","end","end"]}` | ||
}, | ||
@@ -430,3 +430,3 @@ { | ||
qualifier: "contains", | ||
test: `index | begin | lexer | lines | presv | stack | types | token${eol}------|-------|--------|-------|-------|-------------|-------------|------${eol + text.green}0 | -1 | script | XXXX | false | global | start | {${text.none}` | ||
test: `index | begin | ender | lexer | lines | stack | types | token${eol}------|-------|-------|--------|-------|-------------|-------------|------${eol + text.green}0 | -1 | XXXX | script | XXXX | global | start | {${text.none}` | ||
}, | ||
@@ -438,3 +438,3 @@ { | ||
qualifier: "file is", | ||
test: `{"begin":[-1,0,0,0,3,3,3,3,3,3,3,3,0,0,0,0,15,15,15,15,0,0,0,0,23,23,23,23,23,23,23,23,23,23,23,23,0],"lexer":["script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script"],"lines":[0,2,0,1,2,0,1,0,2,0,1,2,0,2,0,1,2,0,2,2,0,2,0,1,2,0,2,0,2,0,2,0,2,0,2,2,2],"presv":[false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false],"stack":["global","object","object","object","object","object","object","object","object","object","object","object","object","object","object","object","array","array","array","array","object","object","object","object","array","array","array","array","array","array","array","array","array","array","array","array","object"],"token":["{","\\\u0022compilerOptions\\\u0022",":","{","\\\u0022target\\\u0022",":","\\\u0022ES6\\\u0022",",","\\\u0022outDir\\\u0022",":","\\\u0022js\\\u0022","}",",","\\\u0022include\\\u0022",":","[","\\\u0022*.ts\\\u0022",",","\\\u0022*\u002a/*.ts\\\u0022","]",",","\\\u0022exclude\\\u0022",":","[","\\\u00222\\\u0022",",","\\\u00223\\\u0022",",","\\\u0022js\\\u0022",",","\\\u0022node_modules\\\u0022",",","\\\u0022parse-framework\\\u0022",",","\\\u0022test\\\u0022","]","}"],"types":["start","string","operator","start","string","operator","string","separator","string","operator","string","end","separator","string","operator","start","string","separator","string","end","separator","string","operator","start","string","separator","string","separator","string","separator","string","separator","string","separator","string","end","end"]}` | ||
test: `{"begin":[-1,0,0,0,3,3,3,3,3,3,3,3,0,0,0,0,15,15,15,15,0,0,0,0,23,23,23,23,23,23,23,23,23,23,0],"ender":[34,34,34,11,11,11,11,11,11,11,11,11,34,34,34,19,19,19,19,19,34,34,34,33,33,33,33,33,33,33,33,33,33,33,34],"lexer":["script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script"],"lines":[0,2,0,1,2,0,1,0,2,0,1,2,0,2,0,1,2,0,2,2,0,2,0,1,2,0,2,0,2,0,2,0,2,2,2],"stack":["global","object","object","object","object","object","object","object","object","object","object","object","object","object","object","object","array","array","array","array","object","object","object","object","array","array","array","array","array","array","array","array","array","array","object"],"token":["{","\\"compilerOptions\\"",":","{","\\"target\\"",":","\\"ES6\\"",",","\\"outDir\\"",":","\\"js\\"","}",",","\\"include\\"",":","[","\\"*.ts\\"",",","\\"**/*.ts\\"","]",",","\\"exclude\\"",":","[","\\"2\\"",",","\\"3\\"",",","\\"js\\"",",","\\"node_modules\\"",",","\\"test\\"","]","}"],"types":["start","string","operator","start","string","operator","string","separator","string","operator","string","end","separator","string","operator","start","string","separator","string","end","separator","string","operator","start","string","separator","string","separator","string","separator","string","separator","string","end","end"]}` | ||
}, | ||
@@ -450,3 +450,3 @@ { | ||
qualifier: "is", | ||
test: `{"begin":[-1,0,0,0,3,3,3,3,3,3,3,3,0,0,0,0,15,15,15,15,0,0,0,0,23,23,23,23,23,23,23,23,23,23,23,23,0],"lexer":["script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script"],"lines":[0,2,0,1,2,0,1,0,2,0,1,2,0,2,0,1,2,0,2,2,0,2,0,1,2,0,2,0,2,0,2,0,2,0,2,2,2],"presv":[false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false],"stack":["global","object","object","object","object","object","object","object","object","object","object","object","object","object","object","object","array","array","array","array","object","object","object","object","array","array","array","array","array","array","array","array","array","array","array","array","object"],"token":["{","\\\u0022compilerOptions\\\u0022",":","{","\\\u0022target\\\u0022",":","\\\u0022ES6\\\u0022",",","\\\u0022outDir\\\u0022",":","\\\u0022js\\\u0022","}",",","\\\u0022include\\\u0022",":","[","\\\u0022*.ts\\\u0022",",","\\\u0022*\u002a/*.ts\\\u0022","]",",","\\\u0022exclude\\\u0022",":","[","\\\u00222\\\u0022",",","\\\u00223\\\u0022",",","\\\u0022js\\\u0022",",","\\\u0022node_modules\\\u0022",",","\\\u0022parse-framework\\\u0022",",","\\\u0022test\\\u0022","]","}"],"types":["start","string","operator","start","string","operator","string","separator","string","operator","string","end","separator","string","operator","start","string","separator","string","end","separator","string","operator","start","string","separator","string","separator","string","separator","string","separator","string","separator","string","end","end"]}` | ||
test: `{"begin":[-1,0,0,0,3,3,3,3,3,3,3,3,0,0,0,0,15,15,15,15,0,0,0,0,23,23,23,23,23,23,23,23,23,23,0],"ender":[34,34,34,11,11,11,11,11,11,11,11,11,34,34,34,19,19,19,19,19,34,34,34,33,33,33,33,33,33,33,33,33,33,33,34],"lexer":["script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script","script"],"lines":[0,2,0,1,2,0,1,0,2,0,1,2,0,2,0,1,2,0,2,2,0,2,0,1,2,0,2,0,2,0,2,0,2,2,2],"stack":["global","object","object","object","object","object","object","object","object","object","object","object","object","object","object","object","array","array","array","array","object","object","object","object","array","array","array","array","array","array","array","array","array","array","object"],"token":["{","\\"compilerOptions\\"",":","{","\\"target\\"",":","\\"ES6\\"",",","\\"outDir\\"",":","\\"js\\"","}",",","\\"include\\"",":","[","\\"*.ts\\"",",","\\"**/*.ts\\"","]",",","\\"exclude\\"",":","[","\\"2\\"",",","\\"3\\"",",","\\"js\\"",",","\\"node_modules\\"",",","\\"test\\"","]","}"],"types":["start","string","operator","start","string","operator","string","separator","string","operator","string","end","separator","string","operator","start","string","separator","string","end","separator","string","operator","start","string","separator","string","separator","string","separator","string","separator","string","end","end"]}` | ||
}, | ||
@@ -476,3 +476,3 @@ { | ||
qualifier: "is", | ||
test: `{"begin":[-1,-1],"lexer":["script","script"],"lines":[0,0],"presv":[false,false],"stack":["global","global"],"token":["tsconfig","x;"],"types":["word","separator"]}` | ||
test: `{"begin":[-1,-1],"ender":[-1,-1],"lexer":["script","script"],"lines":[0,0],"stack":["global","global"],"token":["tsconfig","x;"],"types":["word","separator"]}` | ||
}, | ||
@@ -527,3 +527,3 @@ { | ||
qualifier: "begins", | ||
test: `parse-framework version ${text.angry}` | ||
test: `Sparser version ${text.angry}` | ||
} | ||
@@ -530,0 +530,0 @@ ]; |
@@ -15,5 +15,4 @@ { | ||
"node_modules", | ||
"parse-framework", | ||
"test" | ||
] | ||
} |
Sorry, the diff of this file is too big to display
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is too big to display
Sorry, the diff of this file is too big to display
Sorry, the diff of this file is too big to display
Sorry, the diff of this file is too big to display
Sorry, the diff of this file is too big to display
Sorry, the diff of this file is too big to display
Sorry, the diff of this file is too big to display
Sorry, the diff of this file is too big to display
Dynamic require
Supply chain riskDynamic require can indicate the package is performing dangerous or unsafe dynamic code execution.
Found 1 instance in 1 package
Dynamic require
Supply chain riskDynamic require can indicate the package is performing dangerous or unsafe dynamic code execution.
Found 1 instance in 1 package
6833185
285
103942
101
+ Addedsparser@^1.0.3
+ Added@types/node@12.20.55(transitive)
+ Addedsparser@1.4.12(transitive)
- Removedparse-framework@^2.5.4
- Removedparse-framework@2.5.6(transitive)
Updated@types/node@^10.12.27