Sha256: 4b035507f6d9e26810ee1f47f3a70e7bb0fdae7874dacd86faeec25539bf468e
Contents?: true
Size: 673 Bytes
Versions: 5
Compression:
Stored size: 673 Bytes
Contents
module Flutterby class Exporter def initialize(root) @root = root end def export!(into:) export_node(@root, into: into) end private def export_node(node, into:) return unless node.should_publish? path = ::File.expand_path(::File.join(into, node.full_name)) if node.file? ::File.write(path, node.render(layout: true)) logger.info "Exported #{node.url.colorize(:light_white)}" else FileUtils.mkdir_p(path) node.children.each do |child| export_node(child, into: path) end end end def logger @logger ||= Flutterby.logger end end end
Version data entries
5 entries across 5 versions & 1 rubygems