20 lines
516 B
Ruby
20 lines
516 B
Ruby
# frozen_string_literal: true
|
|
|
|
module IpynbDiff
|
|
# Notebook that was transformed into md, including location of source cells
|
|
class TransformedNotebook
|
|
attr_reader :blocks
|
|
|
|
def as_text
|
|
@blocks.map { |b| b[:content].gsub(/\n/, '\\n') }.join("\n")
|
|
end
|
|
|
|
private
|
|
|
|
def initialize(lines = [], symbol_map = {})
|
|
@blocks = lines.map do |line|
|
|
{ content: line[:content], source_symbol: (symbol = line[:symbol]), source_line: symbol && symbol_map[symbol] }
|
|
end
|
|
end
|
|
end
|
|
end
|