Module: CocoapodsCatalystSupport
- Defined in:
- lib/cocoapods-catalyst-support/utils.rb,
lib/cocoapods-catalyst-support/gem_version.rb,
lib/cocoapods-catalyst-support/os_platform.rb,
lib/cocoapods-catalyst-support/pod_dependency.rb,
lib/cocoapods-catalyst-support/command_helpers.rb,
lib/cocoapods-catalyst-support/catalyst_configuration.rb
Defined Under Namespace
Modules: TargetUtils
Classes: CatalystConfiguration, OSPlatform, PodDependency, Podfile, ValidationError
Constant Summary
collapse
- VERSION =
"0.2.1"
Instance Method Summary
collapse
Instance Method Details
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
|
# File 'lib/cocoapods-catalyst-support/command_helpers.rb', line 51
def configure_podfile
podfile = File.read('Podfile')
unless podfile.include? "require 'cocoapods-catalyst-support'"
podfile = "require 'cocoapods-catalyst-support'\n\n" + podfile
end
config = ''
unless podfile.match(/catalyst_configuration\s+do/)
config += "\n# Configure your macCatalyst dependencies\n"
config += "catalyst_configuration do\n"
config += "\t# Uncomment the next line for a verbose output\n\t# verbose!\n\n"
config += "\t# ios '<pod_name>' # This dependency will only be available for iOS\n"
config += "\t# macos '<pod_name>' # This dependency will only be available for macOS\nend\n"
end
is_catalyst_configured = podfile.match(/post_install[\S\s]+installer[\S\s]configure_catalyst/)
changed = !(is_catalyst_configured && config.empty?)
unless podfile.match /post_install\s+do/
podfile += config
podfile += "\n# Configure your macCatalyst App\npost_install do |installer|\n\tinstaller.configure_catalyst\nend\n"
else
configure_line = (podfile.include? 'configure_catalyst') ? "" : "\n\tinstaller.configure_catalyst\n"
post_install_line = podfile.filter_lines do |line| line.include? 'post_install' end.first
if config.empty?
new_post_install_line = post_install_line + configure_line
else
new_post_install_line = "#{config}\n\n" + post_install_line + configure_line
end
podfile.gsub! post_install_line, new_post_install_line
end
unless podfile.nil?
File.open('Podfile', "w") { |file| file << podfile }
end
if changed
puts 'Done! Checkout your Podfile to start configuring your macCatalyst dependencies'
else
puts 'It seems your Podfile is ready. Go ahead and start configuring your macCatalyst dependencies'
end
end
|
#loggs(string) ⇒ Object
17
18
19
20
21
22
|
# File 'lib/cocoapods-catalyst-support/utils.rb', line 17
def loggs string
if $verbose
puts string
end
return
end
|
#validate_podfile ⇒ Object
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
|
# File 'lib/cocoapods-catalyst-support/command_helpers.rb', line 96
def validate_podfile
podfile = File.read('Podfile')
errors = []
unless podfile.match(/require\s+[('|")]cocoapods-catalyst-support[('|")]/)
errors << "- Are you missing `require cocoapods-catalyst-support` in your Podfile".red
end
unless podfile.match(/catalyst_configuration\s+do/)
errors << "- Are you missing `require cocoapods-catalyst-support` in your Podfile".red
end
unless podfile.match(/post_install[\S\s]+installer[\S\s]configure_catalyst/)
errors << "- Are you calling `configure_catalyst` from `post_install` phase?".red
end
pod_errors = podfile.validate
unless pod_errors.empty?
errors << "#{pod_errors.reduce('') do |acc, s| "#{acc}\n#{s}" end }"
end
unless errors.empty?
raise ValidationError.new "Your catalyst configuration seems to have some errors:\n#{errors.join}"
end
end
|