Module: Frameit

Defined in:
frameit/lib/frameit/device.rb,
frameit/lib/frameit/editor.rb,
frameit/lib/frameit/module.rb,
frameit/lib/frameit/runner.rb,
frameit/lib/frameit/offsets.rb,
frameit/lib/frameit/options.rb,
frameit/lib/frameit/trim_box.rb,
frameit/lib/frameit/mac_editor.rb,
frameit/lib/frameit/screenshot.rb,
frameit/lib/frameit/device_types.rb,
frameit/lib/frameit/config_parser.rb,
frameit/lib/frameit/strings_parser.rb,
frameit/lib/frameit/template_finder.rb,
frameit/lib/frameit/frame_downloader.rb,
frameit/lib/frameit/commands_generator.rb,
frameit/lib/frameit/dependency_checker.rb

Defined Under Namespace

Modules: Color, Devices, Orientation, Platform Classes: CommandsGenerator, ConfigParser, DependencyChecker, Device, Editor, FrameDownloader, MacEditor, Offsets, Options, Runner, Screenshot, StringsParser, TemplateFinder, Trimbox

Constant Summary collapse

Boolean =
Fastlane::Boolean
Helper =

you gotta love Ruby: Helper.* should use the Helper class contained in FastlaneCore

FastlaneCore::Helper
UI =
FastlaneCore::UI
ROOT =
Pathname.new(File.expand_path('../../..', __FILE__))
DisplayType =
Spaceship::ConnectAPI::AppScreenshotSet::DisplayType
DEVICE_SCREEN_IDS =
{
  DisplayType::APP_IPHONE_35 => "iOS-3.5-in",
  DisplayType::APP_IPHONE_40 => "iOS-4-in",
  DisplayType::APP_IPHONE_47 => "iOS-4.7-in",
  DisplayType::APP_IPHONE_55 => "iOS-5.5-in",
  DisplayType::APP_IPHONE_58 => "iOS-5.8-in",
  DisplayType::APP_IPHONE_61 => "iOS-6.1-in",
  DisplayType::APP_IPHONE_65 => "iOS-6.5-in",
  DisplayType::APP_IPHONE_67 => "iOS-6.7-in",
  DisplayType::APP_IPAD_97 => "iOS-iPad",
  DisplayType::APP_IPAD_105 => "iOS-iPad-10.5",
  DisplayType::APP_IPAD_PRO_3GEN_11 => "iOS-iPad-11",
  DisplayType::APP_IPAD_PRO_129 => "iOS-iPad-Pro",
  DisplayType::APP_IPAD_PRO_3GEN_129 => "iOS-iPad-Pro-12.9",
  DisplayType::IMESSAGE_APP_IPHONE_40 => "iOS-4-in-messages",
  DisplayType::IMESSAGE_APP_IPHONE_47 => "iOS-4.7-in-messages",
  DisplayType::IMESSAGE_APP_IPHONE_55 => "iOS-5.5-in-messages",
  DisplayType::IMESSAGE_APP_IPHONE_58 => "iOS-5.8-in-messages",
  DisplayType::IMESSAGE_APP_IPHONE_61 => "iOS-6.1-in-messages",
  DisplayType::IMESSAGE_APP_IPHONE_65 => "iOS-6.5-in-messages",
  DisplayType::IMESSAGE_APP_IPHONE_67 => "iOS-6.7-in-messages",
  DisplayType::IMESSAGE_APP_IPAD_97 => "iOS-iPad-messages",
  DisplayType::IMESSAGE_APP_IPAD_105 => "iOS-iPad-10.5-messages",
  DisplayType::IMESSAGE_APP_IPAD_PRO_3GEN_11 => "iOS-iPad-11-messages",
  DisplayType::IMESSAGE_APP_IPAD_PRO_129 => "iOS-iPad-Pro-messages",
  DisplayType::IMESSAGE_APP_IPAD_PRO_3GEN_129 => "iOS-iPad-Pro-12.9-messages",
  DisplayType::APP_WATCH_SERIES_3 => "iOS-Apple-Watch",
  DisplayType::APP_WATCH_SERIES_4 => "iOS-Apple-Watch-Series4",
  DisplayType::APP_WATCH_SERIES_7 => "iOS-Apple-Watch-Series7",
  DisplayType::APP_WATCH_SERIES_10 => "iOS-Apple-Watch-Series10",
  DisplayType::APP_WATCH_ULTRA => "iOS-Apple-Watch-Ultra",
  DisplayType::APP_APPLE_TV => "Apple-TV",
  DisplayType::APP_DESKTOP => "Mac",
  DisplayType::APP_APPLE_VISION_PRO => "visionOS-Vision-Pro"
}.freeze

Class Attribute Summary collapse

Class Method Summary collapse

Class Attribute Details

.configObject

Returns the value of attribute config.



8
9
10
# File 'frameit/lib/frameit/module.rb', line 8

def config
  @config
end

Class Method Details

.frames_versionObject

Defaults to latest, might be a time stamp if defined in the Framefile.json



17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
# File 'frameit/lib/frameit/module.rb', line 17

def self.frames_version
  return @frames_version if @frames_version
  @frames_version = "latest"

  config_files = Dir["./**/Framefile.json"]
  if config_files.count > 0
    config = ConfigParser.new.load(config_files.first)
    if config.data["device_frame_version"].to_s.length > 0
      @frames_version = config.data["device_frame_version"]
    end
  end

  UI.success("Using device frames version '#{@frames_version}'")

  return @frames_version
end