Sha256: 5fa2c9e3f420c5fae260d103c2720fae5715a525c90ab9e7a7c1f622b9ccaf03

Contents?: true

Size: 1.7 KB

Versions: 189

Compression:

Stored size: 1.7 KB

Contents

require 'deliver'
require 'fastimage'

module Frameit
  class Runner
    def initialize
      downloader = FrameDownloader.new
      unless downloader.frames_exist?
        downloader.download_frames
      end
    end

    def run(path, color = nil)
      unless color
        color = Frameit::Color::BLACK
        color = Frameit::Color::SILVER if Frameit.config[:white] || Frameit.config[:silver]
        color = Frameit::Color::GOLD if Frameit.config[:gold]
        color = Frameit::Color::ROSE_GOLD if Frameit.config[:rose_gold]
      end

      screenshots = Dir.glob("#{path}/**/*.{png,PNG}").uniq # uniq because thanks to {png,PNG} there are duplicates

      if screenshots.count > 0
        screenshots.each do |full_path|
          next if full_path.include? "_framed.png"
          next if full_path.include? ".itmsp/" # a package file, we don't want to modify that
          next if full_path.include? "device_frames/" # these are the device frames the user is using
          device = full_path.rpartition('/').last.partition('-').first # extract device name
          if device.downcase.include? "watch"
            UI.error("Apple Watch screenshots are not framed: '#{full_path}'")
            next # we don't care about watches right now
          end

          UI.message("Framing screenshot '#{full_path}'")

          begin
            screenshot = Screenshot.new(full_path, color)
            screenshot.frame!
          rescue => ex
            UI.error ex.to_s
            UI.error "Backtrace:\n\t#{ex.backtrace.join("\n\t")}" if FastlaneCore::Globals.verbose?
          end
        end
      else
        UI.error "Could not find screenshots in current directory: '#{File.expand_path(path)}'"
      end
    end
  end
end

Version data entries

189 entries across 189 versions & 1 rubygems

Version Path
fastlane-2.65.0.beta.20171107010003 frameit/lib/frameit/runner.rb
fastlane-2.64.0 frameit/lib/frameit/runner.rb
fastlane-2.64.0.beta.20171106010003 frameit/lib/frameit/runner.rb
fastlane-2.64.0.beta.20171105010003 frameit/lib/frameit/runner.rb
fastlane-2.64.0.beta.20171104010004 frameit/lib/frameit/runner.rb
fastlane-2.64.0.beta.20171103010004 frameit/lib/frameit/runner.rb
fastlane-2.64.0.beta.20171102010003 frameit/lib/frameit/runner.rb
fastlane-2.64.0.beta.20171101010004 frameit/lib/frameit/runner.rb
fastlane-2.63.0 frameit/lib/frameit/runner.rb
fastlane-2.63.0.beta.20171031010003 frameit/lib/frameit/runner.rb
fastlane-2.63.0.beta.20171030010003 frameit/lib/frameit/runner.rb
fastlane-2.63.0.beta.20171029010003 frameit/lib/frameit/runner.rb
fastlane-2.63.0.beta.20171028010003 frameit/lib/frameit/runner.rb
fastlane-2.63.0.beta.20171027010003 frameit/lib/frameit/runner.rb
fastlane-2.63.0.beta.20171026010003 frameit/lib/frameit/runner.rb
fastlane-2.63.0.beta.20171025010003 frameit/lib/frameit/runner.rb
fastlane-2.63.0.beta.20171024010003 frameit/lib/frameit/runner.rb
fastlane-2.62.1 frameit/lib/frameit/runner.rb
fastlane-2.63.0.beta.20171023010003 frameit/lib/frameit/runner.rb
fastlane-2.63.0.beta.20171022010003 frameit/lib/frameit/runner.rb