@@ -36,7 +36,10 @@ public enum CocoaPod: String, CaseIterable {
36
36
case mlNaturalLanguage = " MLNaturalLanguage "
37
37
case mlNLLanguageID = " MLNLLanguageID "
38
38
case mlNLSmartReply = " MLNLSmartReply "
39
+ case mlNLTranslate = " MLNLTranslate "
39
40
case mlVision = " MLVision "
41
+ case mlVisionAutoML = " MLVisionAutoML "
42
+ case mlVisionObjectDetection = " MLVisionObjectDetection "
40
43
case mlVisionBarcodeModel = " MLVisionBarcodeModel "
41
44
case mlVisionFaceModel = " MLVisionFaceModel "
42
45
case mlVisionLabelModel = " MLVisionLabelModel "
@@ -75,7 +78,6 @@ public enum CocoaPod: String, CaseIterable {
75
78
76
79
/// Describes the dependency on other frameworks for the README file.
77
80
public func readmeHeader( ) -> String {
78
- // Remove any instances of "Firebase/" in the name, if it exists.
79
81
var header = " ## \( rawValue) "
80
82
if !( self == . analytics || self == . googleSignIn) {
81
83
header += " (~> Analytics) "
@@ -85,7 +87,7 @@ public enum CocoaPod: String, CaseIterable {
85
87
}
86
88
87
89
// TODO: Evaluate if there's a way to do this that doesn't require the hardcoded values to be
88
- // maintained.
90
+ // maintained. Likely looking at the `vendored_frameworks` from each Pod's Podspec.
89
91
/// Returns folders to remove from the Zip file from a specific pod for de-duplication. This
90
92
/// is necessary for the MLKit frameworks because of their unique structure, an unnecessary amount
91
93
/// of frameworks get pulled in.
@@ -124,8 +126,39 @@ public enum CocoaPod: String, CaseIterable {
124
126
" GoogleMobileVision.framework " ,
125
127
" LabelDetector.framework " ,
126
128
" Protobuf.framework " ]
127
- default :
128
- // By default, no folders need to be removed.
129
+ case . mlVisionAutoML:
130
+ return [ " BarcodeDetector.framework " ,
131
+ " FaceDetector.framework " ,
132
+ " LabelDetector.framework " ,
133
+ " TextDetector.framework " ]
134
+ case . mlVisionObjectDetection:
135
+ return [ " BarcodeDetector.framework " ,
136
+ " FaceDetector.framework " ,
137
+ " LabelDetector.framework " ,
138
+ " TextDetector.framework " ]
139
+ case . abTesting,
140
+ . adMob,
141
+ . analytics,
142
+ . auth,
143
+ . core,
144
+ . database,
145
+ . dynamicLinks,
146
+ . firestore,
147
+ . functions,
148
+ . googleSignIn,
149
+ . inAppMessaging,
150
+ . inAppMessagingDisplay,
151
+ . messaging,
152
+ . mlModelInterpreter,
153
+ . mlNaturalLanguage,
154
+ . mlNLLanguageID,
155
+ . mlNLSmartReply,
156
+ . mlNLTranslate,
157
+ . performance,
158
+ . remoteConfig,
159
+ . storage:
160
+ // By default, no folders need to be removed. Explicitly declare each case so we make an
161
+ // intentional decision to not exclude frameworks.
129
162
return [ ]
130
163
}
131
164
}
0 commit comments