Class: PackwerkMermaid::PackwerkFlowchart
- Inherits:
-
Object
- Object
- PackwerkMermaid::PackwerkFlowchart
- Defined in:
- lib/packwerk_mermaid/packwerk_flowchart.rb
Instance Method Summary collapse
- #generate ⇒ Object
-
#initialize(configuration = PackwerkMermaid.configuration) ⇒ PackwerkFlowchart
constructor
A new instance of PackwerkFlowchart.
- #rename_package(name) ⇒ Object
Constructor Details
#initialize(configuration = PackwerkMermaid.configuration) ⇒ PackwerkFlowchart
Returns a new instance of PackwerkFlowchart.
8 9 10 |
# File 'lib/packwerk_mermaid/packwerk_flowchart.rb', line 8 def initialize(configuration = PackwerkMermaid.configuration) @configuration = configuration end |
Instance Method Details
#generate ⇒ Object
12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 |
# File 'lib/packwerk_mermaid/packwerk_flowchart.rb', line 12 def generate package_set = @configuration.packwerk_loader.call(@configuration.packwerk_directory) builder = MermaidFlowchartBuilder.new builder .set_title(@configuration.mermaid_title) .set_text_type(@configuration.mermaid_text_type) .set_shape_style(@configuration.mermaid_shape_style) package_set.packages.each do |_path, package| next if @configuration.packwerk_packages_hidden.include? package.name package.dependencies.each do |dependency_name| next if @configuration.packwerk_packages_hidden.include? dependency_name next unless @configuration.packwerk_package_visibility_callback.call(dependency_name, package.name) builder.add_edge( rename_package(package.name), rename_package(dependency_name) ) end end builder.build end |
#rename_package(name) ⇒ Object
38 39 40 41 42 43 |
# File 'lib/packwerk_mermaid/packwerk_flowchart.rb', line 38 def rename_package(name) return @configuration.packwerk_package_name_mapping[name] unless @configuration.packwerk_package_name_mapping[name].nil? return name if @configuration.packwerk_package_name_callback.nil? @configuration.packwerk_package_name_callback.call(name) end |