fastlane 2.149.1 → 2.150.0.rc5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (90) hide show
  1. checksums.yaml +4 -4
  2. data/deliver/lib/deliver.rb +0 -1
  3. data/deliver/lib/deliver/app_screenshot.rb +26 -25
  4. data/deliver/lib/deliver/download_screenshots.rb +46 -26
  5. data/deliver/lib/deliver/options.rb +6 -11
  6. data/deliver/lib/deliver/runner.rb +7 -21
  7. data/deliver/lib/deliver/setup.rb +5 -30
  8. data/deliver/lib/deliver/submit_for_review.rb +170 -86
  9. data/deliver/lib/deliver/upload_metadata.rb +355 -143
  10. data/deliver/lib/deliver/upload_price_tier.rb +22 -8
  11. data/deliver/lib/deliver/upload_screenshots.rb +140 -39
  12. data/{scan/lib/scan/.test_command_generator.rb.swp → fastlane/lib/fastlane/actions/.hockey.rb.swp} +0 -0
  13. data/fastlane/lib/fastlane/actions/.slack.rb.swp +0 -0
  14. data/{snapshot/lib/snapshot/.test_command_generator_base.rb.swp → fastlane/lib/fastlane/actions/.update_project_provisioning.rb.swp} +0 -0
  15. data/fastlane/lib/fastlane/actions/docs/capture_ios_screenshots.md +1 -1
  16. data/fastlane/lib/fastlane/actions/docs/upload_to_app_store.md.erb +81 -96
  17. data/fastlane/lib/fastlane/actions/docs/upload_to_play_store.md +3 -2
  18. data/fastlane/lib/fastlane/actions/download_dsyms.rb +7 -1
  19. data/fastlane/lib/fastlane/actions/google_play_track_release_names.rb +74 -0
  20. data/fastlane/lib/fastlane/actions/set_changelog.rb +23 -20
  21. data/fastlane/lib/fastlane/actions/slack.rb +1 -1
  22. data/fastlane/lib/fastlane/actions/spm.rb +7 -0
  23. data/fastlane/lib/fastlane/actions/upload_symbols_to_crashlytics.rb +1 -32
  24. data/fastlane/lib/fastlane/lane.rb +3 -3
  25. data/fastlane/lib/fastlane/swift_fastlane_function.rb +8 -4
  26. data/fastlane/lib/fastlane/version.rb +1 -1
  27. data/fastlane/swift/ControlCommand.swift +1 -0
  28. data/fastlane/swift/Fastlane.swift +48 -12
  29. data/fastlane/swift/FastlaneSwiftRunner/FastlaneSwiftRunner.xcodeproj/project.xcworkspace/xcuserdata/josh.xcuserdatad/UserInterfaceState.xcuserstate +0 -0
  30. data/fastlane/swift/FastlaneSwiftRunner/FastlaneSwiftRunner.xcodeproj/xcshareddata/xcschemes/FastlaneRunner.xcscheme +3 -9
  31. data/fastlane/swift/LaneFileProtocol.swift +2 -5
  32. data/fastlane/swift/MatchfileProtocol.swift +1 -1
  33. data/fastlane/swift/RubyCommand.swift +29 -6
  34. data/fastlane/swift/RubyCommandable.swift +1 -0
  35. data/fastlane/swift/Runner.swift +85 -13
  36. data/fastlane/swift/ScanfileProtocol.swift +1 -1
  37. data/fastlane/swift/SnapshotfileProtocol.swift +3 -3
  38. data/fastlane/swift/SocketClient.swift +76 -45
  39. data/fastlane/swift/SocketClientDelegateProtocol.swift +1 -1
  40. data/fastlane/swift/SocketResponse.swift +1 -0
  41. data/fastlane_core/lib/fastlane_core/build_watcher.rb +4 -4
  42. data/fastlane_core/lib/fastlane_core/configuration/config_item.rb +1 -3
  43. data/fastlane_core/lib/fastlane_core/itunes_transporter.rb +89 -52
  44. data/fastlane_core/lib/fastlane_core/pkg_file_analyser.rb +7 -0
  45. data/frameit/lib/frameit/device_types.rb +100 -100
  46. data/pilot/lib/pilot/.manager.rb.swp +0 -0
  47. data/produce/lib/produce/itunes_connect.rb +59 -21
  48. data/produce/lib/produce/options.rb +3 -3
  49. data/sigh/lib/assets/resign.sh +7 -7
  50. data/snapshot/lib/assets/SnapshotHelper.swift +5 -5
  51. data/snapshot/lib/assets/SnapshotHelperXcode8.swift +3 -3
  52. data/snapshot/lib/snapshot/options.rb +0 -1
  53. data/snapshot/lib/snapshot/reports_generator.rb +8 -1
  54. data/spaceship/lib/spaceship/client.rb +4 -3
  55. data/spaceship/lib/spaceship/connect_api.rb +25 -2
  56. data/spaceship/lib/spaceship/connect_api/.DS_Store +0 -0
  57. data/spaceship/lib/spaceship/connect_api/client.rb +97 -31
  58. data/spaceship/lib/spaceship/connect_api/file_uploader.rb +98 -0
  59. data/spaceship/lib/spaceship/connect_api/model.rb +1 -1
  60. data/spaceship/lib/spaceship/connect_api/models/age_rating_declaration.rb +113 -0
  61. data/spaceship/lib/spaceship/connect_api/models/app.rb +135 -3
  62. data/spaceship/lib/spaceship/connect_api/models/app_category.rb +94 -0
  63. data/spaceship/lib/spaceship/connect_api/models/app_info.rb +67 -0
  64. data/spaceship/lib/spaceship/connect_api/models/app_info_localization.rb +38 -0
  65. data/spaceship/lib/spaceship/connect_api/models/app_preview.rb +129 -0
  66. data/spaceship/lib/spaceship/connect_api/models/app_preview_set.rb +71 -0
  67. data/spaceship/lib/spaceship/connect_api/models/app_price.rb +22 -0
  68. data/spaceship/lib/spaceship/connect_api/models/app_price_tier.rb +12 -0
  69. data/spaceship/lib/spaceship/connect_api/models/app_review_attachment.rb +71 -0
  70. data/spaceship/lib/spaceship/connect_api/models/app_screenshot.rb +146 -0
  71. data/spaceship/lib/spaceship/connect_api/models/app_screenshot_set.rb +125 -0
  72. data/spaceship/lib/spaceship/connect_api/models/app_store_review_detail.rb +51 -0
  73. data/spaceship/lib/spaceship/connect_api/models/app_store_version.rb +183 -0
  74. data/spaceship/lib/spaceship/connect_api/models/app_store_version_localization.rb +86 -0
  75. data/spaceship/lib/spaceship/connect_api/models/app_store_version_phased_release.rb +36 -0
  76. data/spaceship/lib/spaceship/connect_api/models/app_store_version_submission.rb +26 -0
  77. data/spaceship/lib/spaceship/connect_api/models/build.rb +4 -0
  78. data/spaceship/lib/spaceship/connect_api/models/idfa_declaration.rb +40 -0
  79. data/spaceship/lib/spaceship/connect_api/models/reset_ratings_request.rb +26 -0
  80. data/spaceship/lib/spaceship/connect_api/models/territory.rb +27 -0
  81. data/spaceship/lib/spaceship/connect_api/models/user.rb +2 -1
  82. data/spaceship/lib/spaceship/connect_api/testflight/testflight.rb +10 -3
  83. data/spaceship/lib/spaceship/connect_api/tunes/client.rb +33 -0
  84. data/spaceship/lib/spaceship/connect_api/tunes/tunes.rb +844 -0
  85. data/spaceship/lib/spaceship/connect_api/users/users.rb +13 -0
  86. data/spaceship/lib/spaceship/spaceauth_runner.rb +2 -2
  87. data/supply/lib/supply/client.rb +19 -0
  88. data/supply/lib/supply/reader.rb +16 -0
  89. metadata +34 -22
  90. data/deliver/lib/deliver/upload_assets.rb +0 -27
@@ -0,0 +1,125 @@
1
+ require_relative '../model'
2
+ require_relative './app_screenshot'
3
+
4
+ module Spaceship
5
+ class ConnectAPI
6
+ class AppScreenshotSet
7
+ include Spaceship::ConnectAPI::Model
8
+
9
+ attr_accessor :screenshot_display_type
10
+
11
+ attr_accessor :app_screenshots
12
+
13
+ module DisplayType
14
+ APP_IPHONE_35 = "APP_IPHONE_35"
15
+ APP_IPHONE_40 = "APP_IPHONE_40"
16
+ APP_IPHONE_47 = "APP_IPHONE_47"
17
+ APP_IPHONE_55 = "APP_IPHONE_55"
18
+ APP_IPHONE_58 = "APP_IPHONE_58"
19
+ APP_IPHONE_65 = "APP_IPHONE_65"
20
+
21
+ APP_IPAD_97 = "APP_IPAD_97"
22
+ APP_IPAD_105 = "APP_IPAD_105"
23
+ APP_IPAD_PRO_3GEN_11 = "APP_IPAD_PRO_3GEN_11"
24
+ APP_IPAD_PRO_129 = "APP_IPAD_PRO_129"
25
+ APP_IPAD_PRO_3GEN_129 = "APP_IPAD_PRO_3GEN_129"
26
+
27
+ IMESSAGE_APP_IPHONE_40 = "IMESSAGE_APP_IPHONE_40"
28
+ IMESSAGE_APP_IPHONE_47 = "IMESSAGE_APP_IPHONE_47"
29
+ IMESSAGE_APP_IPHONE_55 = "IMESSAGE_APP_IPHONE_55"
30
+ IMESSAGE_APP_IPHONE_58 = "IMESSAGE_APP_IPHONE_58"
31
+ IMESSAGE_APP_IPHONE_65 = "IMESSAGE_APP_IPHONE_65"
32
+
33
+ IMESSAGE_APP_IPAD_97 = "IMESSAGE_APP_IPAD_97"
34
+ IMESSAGE_APP_IPAD_105 = "IMESSAGE_APP_IPAD_105"
35
+ IMESSAGE_APP_IPAD_PRO_129 = "IMESSAGE_APP_IPAD_PRO_129"
36
+ IMESSAGE_APP_IPAD_PRO_3GEN_11 = "IMESSAGE_APP_IPAD_PRO_3GEN_11"
37
+ IMESSAGE_APP_IPAD_PRO_3GEN_129 = "IMESSAGE_APP_IPAD_PRO_3GEN_129"
38
+
39
+ APP_WATCH_SERIES_3 = "APP_WATCH_SERIES_3"
40
+ APP_WATCH_SERIES_4 = "APP_WATCH_SERIES_4"
41
+
42
+ APP_APPLE_TV = "APP_APPLE_TV"
43
+
44
+ APP_DESKTOP = "APP_DESKTOP"
45
+
46
+ ALL_IMESSAGE = [
47
+ IMESSAGE_APP_IPHONE_40,
48
+ IMESSAGE_APP_IPHONE_47,
49
+ IMESSAGE_APP_IPHONE_55,
50
+ IMESSAGE_APP_IPHONE_58,
51
+ IMESSAGE_APP_IPHONE_65,
52
+
53
+ IMESSAGE_APP_IPAD_97,
54
+ IMESSAGE_APP_IPAD_105,
55
+ IMESSAGE_APP_IPAD_PRO_129,
56
+ IMESSAGE_APP_IPAD_PRO_3GEN_11,
57
+ IMESSAGE_APP_IPAD_PRO_3GEN_129
58
+ ]
59
+
60
+ ALL = [
61
+ APP_IPHONE_35,
62
+ APP_IPHONE_40,
63
+ APP_IPHONE_47,
64
+ APP_IPHONE_55,
65
+ APP_IPHONE_58,
66
+ APP_IPHONE_65,
67
+
68
+ APP_IPAD_97,
69
+ APP_IPAD_105,
70
+ APP_IPAD_PRO_3GEN_11,
71
+ APP_IPAD_PRO_129,
72
+ APP_IPAD_PRO_3GEN_129,
73
+
74
+ IMESSAGE_APP_IPHONE_40,
75
+ IMESSAGE_APP_IPHONE_47,
76
+ IMESSAGE_APP_IPHONE_55,
77
+ IMESSAGE_APP_IPHONE_58,
78
+ IMESSAGE_APP_IPHONE_65,
79
+
80
+ IMESSAGE_APP_IPAD_97,
81
+ IMESSAGE_APP_IPAD_105,
82
+ IMESSAGE_APP_IPAD_PRO_129,
83
+ IMESSAGE_APP_IPAD_PRO_3GEN_11,
84
+ IMESSAGE_APP_IPAD_PRO_3GEN_129,
85
+
86
+ APP_WATCH_SERIES_3,
87
+ APP_WATCH_SERIES_4,
88
+
89
+ APP_DESKTOP
90
+ ]
91
+ end
92
+
93
+ attr_mapping({
94
+ "screenshotDisplayType" => "screenshot_display_type",
95
+
96
+ "appScreenshots" => "app_screenshots"
97
+ })
98
+
99
+ def self.type
100
+ return "appScreenshotSets"
101
+ end
102
+
103
+ def apple_tv?
104
+ DisplayType::APP_APPLE_TV == screenshot_display_type
105
+ end
106
+
107
+ def imessage?
108
+ DisplayType::ALL_IMESSAGE.include?(screenshot_display_type)
109
+ end
110
+
111
+ #
112
+ # API
113
+ #
114
+
115
+ def self.all(filter: {}, includes: nil, limit: nil, sort: nil)
116
+ resp = Spaceship::ConnectAPI.get_app_screenshot_sets(filter: filter, includes: includes, limit: limit, sort: sort)
117
+ return resp.to_models
118
+ end
119
+
120
+ def upload_screenshot(path: nil, wait_for_processing: true)
121
+ return Spaceship::ConnectAPI::AppScreenshot.create(app_screenshot_set_id: id, path: path, wait_for_processing: wait_for_processing)
122
+ end
123
+ end
124
+ end
125
+ end
@@ -0,0 +1,51 @@
1
+ require_relative '../model'
2
+ require_relative './app_review_attachment'
3
+
4
+ module Spaceship
5
+ class ConnectAPI
6
+ class AppStoreReviewDetail
7
+ include Spaceship::ConnectAPI::Model
8
+
9
+ attr_accessor :contact_first_name
10
+ attr_accessor :contact_last_name
11
+ attr_accessor :contact_phone
12
+ attr_accessor :contact_email
13
+ attr_accessor :demo_account_name
14
+ attr_accessor :demo_account_password
15
+ attr_accessor :demo_account_required
16
+ attr_accessor :notes
17
+
18
+ attr_mapping({
19
+ "contactFirstName" => "contact_first_name",
20
+ "contactLastName" => "contact_last_name",
21
+ "contactPhone" => "contact_phone",
22
+ "contactEmail" => "contact_email",
23
+ "demoAccountName" => "demo_account_name",
24
+ "demoAccountPassword" => "demo_account_password",
25
+ "demoAccountRequired" => "demo_account_required",
26
+ "notes" => "notes"
27
+ })
28
+
29
+ def self.type
30
+ return "appStoreReviewDetails"
31
+ end
32
+
33
+ #
34
+ # API
35
+ #
36
+
37
+ def fetch_app_review_attachments
38
+ resp = Spaceship::ConnectAPI.get_app_review_attachments(app_store_review_detail_id: id)
39
+ return resp.to_models
40
+ end
41
+
42
+ def update(attributes: nil)
43
+ return Spaceship::ConnectAPI.patch_app_store_review_detail(app_store_review_detail_id: id, attributes: attributes)
44
+ end
45
+
46
+ def upload_attachment(path: nil)
47
+ return Spaceship::ConnectAPI::AppReviewAttachment.create(app_store_review_detail_id: id, path: path)
48
+ end
49
+ end
50
+ end
51
+ end
@@ -0,0 +1,183 @@
1
+ require_relative '../model'
2
+ require_relative './app_store_version_localization'
3
+
4
+ module Spaceship
5
+ class ConnectAPI
6
+ class AppStoreVersion
7
+ include Spaceship::ConnectAPI::Model
8
+
9
+ attr_accessor :platform
10
+ attr_accessor :version_string
11
+ attr_accessor :app_store_state
12
+ attr_accessor :store_icon
13
+ attr_accessor :watch_store_icon
14
+ attr_accessor :copyright
15
+ attr_accessor :release_type
16
+ attr_accessor :earliest_release_date # 2020-06-17T12:00:00-07:00
17
+ attr_accessor :uses_idfa
18
+ attr_accessor :is_watch_only
19
+ attr_accessor :downloadable
20
+ attr_accessor :created_date
21
+
22
+ module AppStoreState
23
+ READY_FOR_SALE = "READY_FOR_SALE"
24
+ WAITING_FOR_REVIEW = "WAITING_FOR_REVIEW"
25
+ DEVELOPER_REJECTED = "DEVELOPER_REJECTED"
26
+ REJECTED = "REJECTED"
27
+ PREPARE_FOR_SUBMISSION = "PREPARE_FOR_SUBMISSION"
28
+ METADATA_REJECTED = "METADATA_REJECTED"
29
+ INVALID_BINARY = "INVALID_BINARY"
30
+ end
31
+
32
+ module ReleaseType
33
+ AFTER_APPROVAL = "AFTER_APPROVAL"
34
+ MANUAL = "MANUAL"
35
+ SCHEDULED = "SCHEDULED"
36
+ end
37
+
38
+ attr_mapping({
39
+ "platform" => "platform",
40
+ "versionString" => "version_string",
41
+ "appStoreState" => "app_store_state",
42
+ "storeIcon" => "store_icon",
43
+ "watchStoreIcon" => "watch_store_icon",
44
+ "copyright" => "copyright",
45
+ "releaseType" => "release_type",
46
+ "earliestReleaseDate" => "earliest_release_date",
47
+ "usesIdfa" => "uses_idfa",
48
+ "isWatchOnly" => "is_watch_only",
49
+ "downloadable" => "downloadable",
50
+ "createdDate" => "created_date"
51
+ })
52
+
53
+ def self.type
54
+ return "appStoreVersions"
55
+ end
56
+
57
+ #
58
+ # API
59
+ #
60
+
61
+ # app,routingAppCoverage,resetRatingsRequest,appStoreVersionSubmission,appStoreVersionPhasedRelease,ageRatingDeclaration,appStoreReviewDetail,idfaDeclaration,gameCenterConfiguration
62
+ def self.get(app_store_version_id: nil, includes: nil, limit: nil, sort: nil)
63
+ return Spaceship::ConnectAPI.get_app_store_version(
64
+ app_store_version_id: app_store_version_id,
65
+ includes: includes
66
+ ).first
67
+ end
68
+
69
+ def update(attributes: nil)
70
+ return Spaceship::ConnectAPI.patch_app_store_version(app_store_version_id: id, attributes: attributes).first
71
+ end
72
+
73
+ #
74
+ # Age Rating Delcaration
75
+ #
76
+
77
+ def fetch_age_rating_declaration
78
+ resp = Spaceship::ConnectAPI.get_age_rating_declaration(app_store_version_id: id)
79
+ return resp.to_models.first
80
+ end
81
+
82
+ #
83
+ # App Store Version Localizations
84
+ #
85
+
86
+ def create_app_store_version_localization(attributes: nil)
87
+ resp = Spaceship::ConnectAPI.post_app_store_version_localization(app_store_version_id: id, attributes: attributes)
88
+ return resp.to_models.first
89
+ end
90
+
91
+ # appScreenshotSets,appPreviewSets
92
+ def get_app_store_version_localizations(filter: {}, includes: "appScreenshotSets", limit: nil, sort: nil)
93
+ filter ||= {}
94
+ filter["appStoreVersion"] = id
95
+ return Spaceship::ConnectAPI::AppStoreVersionLocalization.all(filter: filter, includes: includes, limit: limit, sort: sort)
96
+ end
97
+
98
+ #
99
+ # App Store Review Detail
100
+ #
101
+
102
+ def create_app_store_review_detail(attributes: nil)
103
+ resp = Spaceship::ConnectAPI.post_app_store_review_detail(app_store_version_id: id, attributes: attributes)
104
+ return resp.to_models.first
105
+ end
106
+
107
+ def fetch_app_store_review_detail
108
+ resp = Spaceship::ConnectAPI.get_app_store_review_detail(app_store_version_id: id)
109
+ return resp.to_models.first
110
+ end
111
+
112
+ #
113
+ # App Store Version Phased Releases
114
+ #
115
+
116
+ def fetch_app_store_version_phased_release
117
+ resp = Spaceship::ConnectAPI.get_app_store_version_phased_release(app_store_version_id: id)
118
+ return resp.to_models.first
119
+ end
120
+
121
+ def create_app_store_version_phased_release(attributes: nil)
122
+ resp = Spaceship::ConnectAPI.post_app_store_version_phased_release(app_store_version_id: id, attributes: attributes)
123
+ return resp.to_models.first
124
+ end
125
+
126
+ #
127
+ # App Store Version Submissions
128
+ #
129
+
130
+ def fetch_app_store_version_submission
131
+ resp = Spaceship::ConnectAPI.get_app_store_version_submission(app_store_version_id: id)
132
+ return resp.to_models.first
133
+ end
134
+
135
+ def create_app_store_version_submission
136
+ resp = Spaceship::ConnectAPI.post_app_store_version_submission(app_store_version_id: id)
137
+ return resp.to_models.first
138
+ end
139
+
140
+ #
141
+ # Build
142
+ #
143
+
144
+ def get_build(build_id: nil)
145
+ resp = Spaceship::ConnectAPI.get_build(app_store_version_id: id, build_id: build_id)
146
+ return resp.to_models.first
147
+ end
148
+
149
+ def select_build(build_id: nil)
150
+ resp = Spaceship::ConnectAPI.patch_app_store_version_with_build(app_store_version_id: id, build_id: build_id)
151
+ return resp.to_models.first
152
+ end
153
+
154
+ #
155
+ # IDFA Declarations
156
+ #
157
+
158
+ def fetch_idfa_declaration
159
+ resp = Spaceship::ConnectAPI.get_idfa_declaration(app_store_version_id: id)
160
+ return resp.to_models.first
161
+ end
162
+
163
+ def create_idfa_declaration(attributes: nil)
164
+ resp = Spaceship::ConnectAPI.post_idfa_declaration(app_store_version_id: id, attributes: attributes)
165
+ return resp.to_models.first
166
+ end
167
+
168
+ #
169
+ # Reset Ratings Requests
170
+ #
171
+
172
+ def fetch_reset_ratings_request
173
+ resp = Spaceship::ConnectAPI.get_reset_ratings_request(app_store_version_id: id)
174
+ return resp.to_models.first
175
+ end
176
+
177
+ def create_reset_ratings_request
178
+ resp = Spaceship::ConnectAPI.post_reset_ratings_request(app_store_version_id: id)
179
+ return resp.to_models.first
180
+ end
181
+ end
182
+ end
183
+ end
@@ -0,0 +1,86 @@
1
+ require_relative '../model'
2
+ require_relative './app_preview_set'
3
+ require_relative './app_screenshot_set'
4
+
5
+ module Spaceship
6
+ class ConnectAPI
7
+ class AppStoreVersionLocalization
8
+ include Spaceship::ConnectAPI::Model
9
+
10
+ attr_accessor :description
11
+ attr_accessor :locale
12
+ attr_accessor :keywords
13
+ attr_accessor :marketing_url
14
+ attr_accessor :promotional_text
15
+ attr_accessor :support_url
16
+ attr_accessor :whats_new
17
+
18
+ attr_accessor :app_screenshot_sets
19
+ attr_accessor :app_preview_sets
20
+
21
+ attr_mapping({
22
+ "description" => "description",
23
+ "locale" => "locale",
24
+ "keywords" => "keywords",
25
+ "marketingUrl" => "marketing_url",
26
+ "promotionalText" => "promotional_text",
27
+ "supportUrl" => "support_url",
28
+ "whatsNew" => "whats_new",
29
+
30
+ "appScreenshotSets" => "app_screenshot_sets",
31
+ "appPreviewSets" => "app_preview_sets"
32
+ })
33
+
34
+ def self.type
35
+ return "appStoreVersionLocalizations"
36
+ end
37
+
38
+ #
39
+ # API
40
+ #
41
+
42
+ def self.all(filter: {}, includes: nil, limit: nil, sort: nil)
43
+ resp = Spaceship::ConnectAPI.get_app_store_version_localizations(filter: filter, includes: includes, limit: limit, sort: sort)
44
+ return resp.to_models
45
+ end
46
+
47
+ def update(attributes: nil)
48
+ Spaceship::ConnectAPI.patch_app_store_version_localization(app_store_version_localization_id: id, attributes: attributes)
49
+ end
50
+
51
+ def delete!(filter: {}, includes: nil, limit: nil, sort: nil)
52
+ Spaceship::ConnectAPI.delete_app_store_version_localization(app_store_version_localization_id: id)
53
+ end
54
+
55
+ #
56
+ # App Preview Sets
57
+ #
58
+
59
+ def get_app_preview_sets(filter: {}, includes: "appPreviews", limit: nil, sort: nil)
60
+ filter ||= {}
61
+ filter["appStoreVersionLocalization"] = id
62
+ return Spaceship::ConnectAPI::AppPreviewSet.all(filter: filter, includes: includes, limit: limit, sort: sort)
63
+ end
64
+
65
+ def create_app_preview_set(attributes: nil)
66
+ resp = Spaceship::ConnectAPI.post_app_preview_set(app_store_version_localization_id: id, attributes: attributes)
67
+ return resp.to_models.first
68
+ end
69
+
70
+ #
71
+ # App Screenshot Sets
72
+ #
73
+
74
+ def get_app_screenshot_sets(filter: {}, includes: "appScreenshots", limit: nil, sort: nil)
75
+ filter ||= {}
76
+ filter["appStoreVersionLocalization"] = id
77
+ return Spaceship::ConnectAPI::AppScreenshotSet.all(filter: filter, includes: includes, limit: limit, sort: sort)
78
+ end
79
+
80
+ def create_app_screenshot_set(attributes: nil)
81
+ resp = Spaceship::ConnectAPI.post_app_screenshot_set(app_store_version_localization_id: id, attributes: attributes)
82
+ return resp.to_models.first
83
+ end
84
+ end
85
+ end
86
+ end
@@ -0,0 +1,36 @@
1
+ require_relative '../model'
2
+ module Spaceship
3
+ class ConnectAPI
4
+ class AppStoreVersionPhasedRelease
5
+ include Spaceship::ConnectAPI::Model
6
+
7
+ attr_accessor :phased_release_state
8
+ attr_accessor :start_date
9
+ attr_accessor :total_pause_duration
10
+ attr_accessor :current_day_number
11
+
12
+ module PhasedReleaseState
13
+ INACTIVE = "INACTIVE"
14
+ end
15
+
16
+ attr_mapping({
17
+ "phasedReleaseState" => "phased_release_state",
18
+ "startDate" => "start_date",
19
+ "totalPauseDuration" => "total_pause_duration",
20
+ "currentDayNumber" => "current_day_number"
21
+ })
22
+
23
+ def self.type
24
+ return "appStoreVersionPhasedReleases"
25
+ end
26
+
27
+ #
28
+ # API
29
+ #
30
+
31
+ def delete!(filter: {}, includes: nil, limit: nil, sort: nil)
32
+ Spaceship::ConnectAPI.delete_app_store_version_phased_release(app_store_version_phased_release_id: id)
33
+ end
34
+ end
35
+ end
36
+ end