summaryrefslogtreecommitdiff
path: root/vendor/gems/ipynbdiff/lib/transformed_notebook.rb
blob: f98e5f6808679c074fbd08e2f03301aa6f929b2e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
# 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