* Fix binary diffs cause error when viewed * Change color of git lines to #000000a0 * Update assets
This commit is contained in:
@@ -0,0 +1 @@
|
||||
{"files":{"app-6e925e38a12a40c4fa9e0400cc874e0f4f97b66fdeb90a144dea527dbb544fbd.js":{"logical_path":"app.js","mtime":"2021-01-03T19:24:22+05:00","size":136032,"digest":"6e925e38a12a40c4fa9e0400cc874e0f4f97b66fdeb90a144dea527dbb544fbd","integrity":"sha256-bpJeOKEqQMT6ngQAzIdOD0+Xtm/euQoUTepSfbtUT70="},"editor-b621bfe2cb8823516fb3a96c32e82001b297f6754117b47bdad6e59db85a9d08.js":{"logical_path":"editor.js","mtime":"2020-12-30T18:08:26+05:00","size":747276,"digest":"b621bfe2cb8823516fb3a96c32e82001b297f6754117b47bdad6e59db85a9d08","integrity":"sha256-tiG/4suII1Fvs6lsMuggAbKX9nVBF7R72tblnbhanQg="},"app-4215e58002a43c4b2e9f0f7caa05a81c7c09d22a918c6fe40cd8e423db3110b5.css":{"logical_path":"app.css","mtime":"2021-01-03T19:58:10+05:00","size":298142,"digest":"4215e58002a43c4b2e9f0f7caa05a81c7c09d22a918c6fe40cd8e423db3110b5","integrity":"sha256-QhXlgAKkPEsunw98qgWoHHwJ0iqRjG/kDNjkI9sxELU="},"criticmarkup-31ae5d3282bbb8e7b7c3c9917e9fb68e3315a6b4a75da6cec48d21b8846905c4.css":{"logical_path":"criticmarkup.css","mtime":"2020-12-30T18:08:26+05:00","size":646,"digest":"31ae5d3282bbb8e7b7c3c9917e9fb68e3315a6b4a75da6cec48d21b8846905c4","integrity":"sha256-Ma5dMoK7uOe3w8mRfp+2jjMVprSnXabOxI0huIRpBcQ="},"print-512498c368be0d3fb1ba105dfa84289ae48380ec9fcbef948bd4e23b0b095bfb.css":{"logical_path":"print.css","mtime":"2020-12-30T18:08:26+05:00","size":75,"digest":"512498c368be0d3fb1ba105dfa84289ae48380ec9fcbef948bd4e23b0b095bfb","integrity":"sha256-USSYw2i+DT+xuhBd+oQomuSDgOyfy++Ui9TiOwsJW/s="}},"assets":{"app.js":"app-6e925e38a12a40c4fa9e0400cc874e0f4f97b66fdeb90a144dea527dbb544fbd.js","editor.js":"editor-b621bfe2cb8823516fb3a96c32e82001b297f6754117b47bdad6e59db85a9d08.js","app.css":"app-4215e58002a43c4b2e9f0f7caa05a81c7c09d22a918c6fe40cd8e423db3110b5.css","criticmarkup.css":"criticmarkup-31ae5d3282bbb8e7b7c3c9917e9fb68e3315a6b4a75da6cec48d21b8846905c4.css","print.css":"print-512498c368be0d3fb1ba105dfa84289ae48380ec9fcbef948bd4e23b0b095bfb.css"}}
|
||||
@@ -1 +0,0 @@
|
||||
{"files":{"app-6e925e38a12a40c4fa9e0400cc874e0f4f97b66fdeb90a144dea527dbb544fbd.js":{"logical_path":"app.js","mtime":"2020-08-03T18:13:54+02:00","size":136032,"digest":"6e925e38a12a40c4fa9e0400cc874e0f4f97b66fdeb90a144dea527dbb544fbd","integrity":"sha256-bpJeOKEqQMT6ngQAzIdOD0+Xtm/euQoUTepSfbtUT70="},"editor-b2c10f22ef6ca1e120956a2d11ff4ca19ac44d7e7240f5cc43ec949184d8b708.js":{"logical_path":"editor.js","mtime":"2020-08-03T18:13:54+02:00","size":747273,"digest":"b2c10f22ef6ca1e120956a2d11ff4ca19ac44d7e7240f5cc43ec949184d8b708","integrity":"sha256-ssEPIu9soeEglWotEf9MoZrETX5yQPXMQ+yUkYTYtwg="},"app-b205e593a30f1cc0054e2e9ed9fc8af3658d8ef4a62b9708c20f204560deefb7.css":{"logical_path":"app.css","mtime":"2020-03-30T11:12:22+02:00","size":298111,"digest":"b205e593a30f1cc0054e2e9ed9fc8af3658d8ef4a62b9708c20f204560deefb7","integrity":"sha256-sgXlk6MPHMAFTi6e2fyK82WNjvSmK5cIwg8gRWDe77c="},"criticmarkup-31ae5d3282bbb8e7b7c3c9917e9fb68e3315a6b4a75da6cec48d21b8846905c4.css":{"logical_path":"criticmarkup.css","mtime":"2020-03-29T22:28:51+02:00","size":646,"digest":"31ae5d3282bbb8e7b7c3c9917e9fb68e3315a6b4a75da6cec48d21b8846905c4","integrity":"sha256-Ma5dMoK7uOe3w8mRfp+2jjMVprSnXabOxI0huIRpBcQ="},"print-512498c368be0d3fb1ba105dfa84289ae48380ec9fcbef948bd4e23b0b095bfb.css":{"logical_path":"print.css","mtime":"2020-03-30T11:12:22+02:00","size":75,"digest":"512498c368be0d3fb1ba105dfa84289ae48380ec9fcbef948bd4e23b0b095bfb","integrity":"sha256-USSYw2i+DT+xuhBd+oQomuSDgOyfy++Ui9TiOwsJW/s="}},"assets":{"app.js":"app-6e925e38a12a40c4fa9e0400cc874e0f4f97b66fdeb90a144dea527dbb544fbd.js","editor.js":"editor-b2c10f22ef6ca1e120956a2d11ff4ca19ac44d7e7240f5cc43ec949184d8b708.js","app.css":"app-b205e593a30f1cc0054e2e9ed9fc8af3658d8ef4a62b9708c20f204560deefb7.css","criticmarkup.css":"criticmarkup-31ae5d3282bbb8e7b7c3c9917e9fb68e3315a6b4a75da6cec48d21b8846905c4.css","print.css":"print-512498c368be0d3fb1ba105dfa84289ae48380ec9fcbef948bd4e23b0b095bfb.css"}}
|
||||
+1
-1
File diff suppressed because one or more lines are too long
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
+1
-1
File diff suppressed because one or more lines are too long
BIN
Binary file not shown.
BIN
Binary file not shown.
@@ -615,6 +615,10 @@ a {
|
||||
color: #999;
|
||||
background-color: #EAF2F5;
|
||||
}
|
||||
|
||||
.gg {
|
||||
color: #000000a0;
|
||||
}
|
||||
}
|
||||
|
||||
.type-csharp {
|
||||
|
||||
@@ -23,12 +23,19 @@ module Precious
|
||||
end
|
||||
|
||||
def files
|
||||
files = @diff.split(%r{^diff --git a/.+ b/.+$}).reject(&:empty?)
|
||||
files = @diff.force_encoding(Encoding::UTF_8).scan(%r{
|
||||
^diff\ --git\ # diff start
|
||||
.+? # diff body
|
||||
(?=^diff\ --git|\Z) # scan until next diff or string
|
||||
}sxmu)
|
||||
|
||||
files.map do |diff|
|
||||
matched = diff.match(%r{(?<=^--- a/).+$})
|
||||
matched = diff.match(%r{(?<=^\+\+\+ b/).+$}) if matched.nil?
|
||||
match = diff.match(%r{^diff --git (")?[ab]/(.+)(?(1)") (")?[ab]/(.+)(?(3)")})
|
||||
path = match[2]
|
||||
path = match[4] if path.nil?
|
||||
|
||||
{
|
||||
path: matched[0],
|
||||
path: path,
|
||||
lines: lines(diff)
|
||||
}
|
||||
end
|
||||
|
||||
@@ -19,16 +19,21 @@ module Precious
|
||||
|
||||
def lines(diff = @diff)
|
||||
lines = []
|
||||
lines_to_parse = diff.split("\n")[4..-1]
|
||||
# If the diff is of a rename, the diff header will be one line longer than normal because it will contain a line starting with '+++' to indicate the 'new' filename.
|
||||
# Make sure to skip that header line if it is present.
|
||||
lines_to_parse = lines_to_parse[1..-1] if lines_to_parse[0].start_with?('+++')
|
||||
lines_to_parse = diff.split("\n")[3..-1]
|
||||
lines_to_parse = lines_to_parse[2..-1] if lines_to_parse[0].start_with?('---')
|
||||
|
||||
if lines_to_parse.nil? || lines_to_parse.empty?
|
||||
lines_to_parse = [] # File is created without content
|
||||
else
|
||||
lines_to_parse = lines_to_parse[1..-1] if lines_to_parse[0].start_with?('+++')
|
||||
end
|
||||
|
||||
lines_to_parse.each_with_index do |line, line_index|
|
||||
lines << { :line => line,
|
||||
:class => line_class(line),
|
||||
:ldln => left_diff_line_number(line),
|
||||
:rdln => right_diff_line_number(line) }
|
||||
end if diff
|
||||
end
|
||||
lines
|
||||
end
|
||||
|
||||
@@ -41,6 +46,8 @@ module Precious
|
||||
def line_class(line)
|
||||
if line =~ /^@@/
|
||||
'gc'
|
||||
elsif git_line?(line)
|
||||
'gg'
|
||||
elsif line =~ /^\+/
|
||||
'gi'
|
||||
elsif line =~ /^\-/
|
||||
@@ -53,7 +60,7 @@ module Precious
|
||||
@left_diff_line_number = nil
|
||||
|
||||
def left_diff_line_number(line)
|
||||
if line =~ /^@@/
|
||||
if git_line?(line)
|
||||
m, li = *line.match(/\-(\d+)/)
|
||||
@left_diff_line_number = li.to_i
|
||||
@current_line_number = @left_diff_line_number
|
||||
@@ -75,7 +82,7 @@ module Precious
|
||||
@right_diff_line_number = nil
|
||||
|
||||
def right_diff_line_number(line)
|
||||
if line =~ /^@@/
|
||||
if git_line?(line)
|
||||
m, ri = *line.match(/\+(\d+)/)
|
||||
@right_diff_line_number = ri.to_i
|
||||
@current_line_number = @right_diff_line_number
|
||||
@@ -93,6 +100,10 @@ module Precious
|
||||
end
|
||||
ret
|
||||
end
|
||||
|
||||
def git_line?(line)
|
||||
!!(line =~ /^(\\ No newline|Binary files|@@)/)
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
Reference in New Issue
Block a user