Loading lib/jsduck/assets.rb +2 −1 Original line number Diff line number Diff line require 'jsduck/img/dir_set' require 'jsduck/img/writer' require 'jsduck/welcome' require 'jsduck/guides' require 'jsduck/videos' Loading Loading @@ -43,7 +44,7 @@ module JsDuck # Welcome page and categories are written in JsDuck::IndexHtml def write @guides.write(@opts.output_dir+"/guides") @images.copy(@opts.output_dir+"/images") Img::Writer.copy(@images.all_used, @opts.output_dir+"/images") end end Loading lib/jsduck/img/dir_set.rb +7 −17 Original line number Diff line number Diff line Loading @@ -5,7 +5,13 @@ require "fileutils" module JsDuck module Img # Looks up images from directories specified through --images option. # A collection if Img::Dir objects. # # Looks up images from directories specified through --images # option. # # This class provides the same interface as Img::Dir, except that # the constructor takes array of full_paths not just one. class DirSet def initialize(full_paths, relative_path) @dirs = full_paths.map {|path| Img::Dir.new(path, relative_path) } Loading @@ -27,22 +33,6 @@ module JsDuck def report_unused @dirs.each {|dir| dir.report_unused } end # Copys over images to given output dir def copy(output_dir) all_used.each {|img| copy_img(img, output_dir) } end private # Copy a single image def copy_img(img, output_dir) dest = File.join(output_dir, img[:filename]) Logger.log("Copying image", dest) FileUtils.makedirs(File.dirname(dest)) FileUtils.cp(img[:full_path], dest) end end end Loading lib/jsduck/img/writer.rb 0 → 100644 +23 −0 Original line number Diff line number Diff line require "jsduck/logger" require "fileutils" module JsDuck module Img # Copies images to destination directory. class Writer # Takes an array of image records retrieved from # Img::Dir#all_used or Img::DirSet#all_used and copies all of # them to given output directory. def self.copy(images, output_dir) images.each do |img| dest = File.join(output_dir, img[:filename]) Logger.log("Copying image", dest) FileUtils.makedirs(File.dirname(dest)) FileUtils.cp(img[:full_path], dest) end end end end end Loading
lib/jsduck/assets.rb +2 −1 Original line number Diff line number Diff line require 'jsduck/img/dir_set' require 'jsduck/img/writer' require 'jsduck/welcome' require 'jsduck/guides' require 'jsduck/videos' Loading Loading @@ -43,7 +44,7 @@ module JsDuck # Welcome page and categories are written in JsDuck::IndexHtml def write @guides.write(@opts.output_dir+"/guides") @images.copy(@opts.output_dir+"/images") Img::Writer.copy(@images.all_used, @opts.output_dir+"/images") end end Loading
lib/jsduck/img/dir_set.rb +7 −17 Original line number Diff line number Diff line Loading @@ -5,7 +5,13 @@ require "fileutils" module JsDuck module Img # Looks up images from directories specified through --images option. # A collection if Img::Dir objects. # # Looks up images from directories specified through --images # option. # # This class provides the same interface as Img::Dir, except that # the constructor takes array of full_paths not just one. class DirSet def initialize(full_paths, relative_path) @dirs = full_paths.map {|path| Img::Dir.new(path, relative_path) } Loading @@ -27,22 +33,6 @@ module JsDuck def report_unused @dirs.each {|dir| dir.report_unused } end # Copys over images to given output dir def copy(output_dir) all_used.each {|img| copy_img(img, output_dir) } end private # Copy a single image def copy_img(img, output_dir) dest = File.join(output_dir, img[:filename]) Logger.log("Copying image", dest) FileUtils.makedirs(File.dirname(dest)) FileUtils.cp(img[:full_path], dest) end end end Loading
lib/jsduck/img/writer.rb 0 → 100644 +23 −0 Original line number Diff line number Diff line require "jsduck/logger" require "fileutils" module JsDuck module Img # Copies images to destination directory. class Writer # Takes an array of image records retrieved from # Img::Dir#all_used or Img::DirSet#all_used and copies all of # them to given output directory. def self.copy(images, output_dir) images.each do |img| dest = File.join(output_dir, img[:filename]) Logger.log("Copying image", dest) FileUtils.makedirs(File.dirname(dest)) FileUtils.cp(img[:full_path], dest) end end end end end