lib/jekyll-diagrams/erd.rb in jekyll-diagrams-0.9.3 vs lib/jekyll-diagrams/erd.rb in jekyll-diagrams-0.10.0
- old
+ new
@@ -1,36 +1,10 @@
# frozen_string_literal: true
+require_relative 'erd/renderer'
+require_relative 'erd/block'
+
module Jekyll
module Diagrams
- class ErdBlock < Block
- XML_REGEX = /^<\?xml(([^>]|\n)*>\n?){2}/.freeze
- CONFIGURATIONS = %w[config edge].freeze
- SWITCHES = {
- 'dot-entity' => false
- }.freeze
-
- def render_svg(code, config)
- command = build_command(config)
-
- svg = render_with_stdin_stdout(command, code)
- svg.sub!(XML_REGEX, '')
- end
-
- def build_command(config)
- command = +'erd --fmt=svg'
-
- SWITCHES.merge(config.slice(*SWITCHES.keys)).each do |switch, value|
- command << " --#{switch}" if value != false
- end
-
- CONFIGURATIONS.each do |conf|
- command << " --#{conf}=#{config[conf]}" if config.key?(conf)
- end
-
- command
- end
- end
+ Liquid::Template.register_tag(:erd, ErdBlock)
end
end
-
-Liquid::Template.register_tag(:erd, Jekyll::Diagrams::ErdBlock)