@@ -139,3 +139,118 @@ sealed class UploadState with _$UploadState {
139139 /// Returns true if state is [Failed]
140140 bool get isFailed => this is Failed ;
141141}
142+
143+ // coverage:ignore-start
144+
145+ /// @nodoc
146+ extension UploadStatePatternMatching on UploadState {
147+ /// @nodoc
148+ @optionalTypeArgs
149+ TResult when < TResult extends Object ? > ({
150+ required TResult Function () preparing,
151+ required TResult Function (int uploaded, int total) inProgress,
152+ required TResult Function () success,
153+ required TResult Function (String error) failed,
154+ }) {
155+ final uploadState = this ;
156+ return switch (uploadState) {
157+ Preparing () => preparing (),
158+ InProgress () => inProgress (uploadState.uploaded, uploadState.total),
159+ Success () => success (),
160+ Failed () => failed (uploadState.error),
161+ };
162+ }
163+
164+ /// @nodoc
165+ @optionalTypeArgs
166+ TResult ? whenOrNull <TResult extends Object ?>({
167+ TResult ? Function ()? preparing,
168+ TResult ? Function (int uploaded, int total)? inProgress,
169+ TResult ? Function ()? success,
170+ TResult ? Function (String error)? failed,
171+ }) {
172+ final uploadState = this ;
173+ return switch (uploadState) {
174+ Preparing () => preparing? .call (),
175+ InProgress () => inProgress? .call (uploadState.uploaded, uploadState.total),
176+ Success () => success? .call (),
177+ Failed () => failed? .call (uploadState.error),
178+ };
179+ }
180+
181+ /// @nodoc
182+ @optionalTypeArgs
183+ TResult maybeWhen <TResult extends Object ?>({
184+ TResult Function ()? preparing,
185+ TResult Function (int uploaded, int total)? inProgress,
186+ TResult Function ()? success,
187+ TResult Function (String error)? failed,
188+ required TResult orElse (),
189+ }) {
190+ final uploadState = this ;
191+ final result = switch (uploadState) {
192+ Preparing () => preparing? .call (),
193+ InProgress () => inProgress? .call (uploadState.uploaded, uploadState.total),
194+ Success () => success? .call (),
195+ Failed () => failed? .call (uploadState.error),
196+ };
197+
198+ return result ?? orElse ();
199+ }
200+
201+ /// @nodoc
202+ @optionalTypeArgs
203+ TResult map <TResult extends Object ?>({
204+ required TResult Function (Preparing value) preparing,
205+ required TResult Function (InProgress value) inProgress,
206+ required TResult Function (Success value) success,
207+ required TResult Function (Failed value) failed,
208+ }) {
209+ final uploadState = this ;
210+ return switch (uploadState) {
211+ Preparing () => preparing (uploadState),
212+ InProgress () => inProgress (uploadState),
213+ Success () => success (uploadState),
214+ Failed () => failed (uploadState),
215+ };
216+ }
217+
218+ /// @nodoc
219+ @optionalTypeArgs
220+ TResult ? mapOrNull <TResult extends Object ?>({
221+ TResult ? Function (Preparing value)? preparing,
222+ TResult ? Function (InProgress value)? inProgress,
223+ TResult ? Function (Success value)? success,
224+ TResult ? Function (Failed value)? failed,
225+ }) {
226+ final uploadState = this ;
227+ return switch (uploadState) {
228+ Preparing () => preparing? .call (uploadState),
229+ InProgress () => inProgress? .call (uploadState),
230+ Success () => success? .call (uploadState),
231+ Failed () => failed? .call (uploadState),
232+ };
233+ }
234+
235+ /// @nodoc
236+ @optionalTypeArgs
237+ TResult maybeMap <TResult extends Object ?>({
238+ TResult Function (Preparing value)? preparing,
239+ TResult Function (InProgress value)? inProgress,
240+ TResult Function (Success value)? success,
241+ TResult Function (Failed value)? failed,
242+ required TResult orElse (),
243+ }) {
244+ final uploadState = this ;
245+ final result = switch (uploadState) {
246+ Preparing () => preparing? .call (uploadState),
247+ InProgress () => inProgress? .call (uploadState),
248+ Success () => success? .call (uploadState),
249+ Failed () => failed? .call (uploadState),
250+ };
251+
252+ return result ?? orElse ();
253+ }
254+ }
255+
256+ // coverage:ignore-end
0 commit comments