// coverage:ignore-file
// GENERATED CODE - DO NOT MODIFY BY HAND
// ignore_for_file: type=lint
// ignore_for_file: unused_element, deprecated_member_use, deprecated_member_use_from_same_package, use_function_type_syntax_for_parameters, unnecessary_const, avoid_init_to_null, invalid_override_different_default_values_named, prefer_expression_function_bodies, annotate_overrides, invalid_annotation_target, unnecessary_question_mark

part of 'order_loader_bloc.dart';

// **************************************************************************
// FreezedGenerator
// **************************************************************************

T _$identity<T>(T value) => value;

final _privateConstructorUsedError = UnsupportedError(
    'It seems like you constructed your class using `MyClass._()`. This constructor is only meant to be used by freezed and you are not supposed to need it nor use it.\nPlease check the documentation here for more information: https://github.com/rrousselGit/freezed#adding-getters-and-methods-to-our-models');

/// @nodoc
mixin _$OrderLoaderEvent {
  @optionalTypeArgs
  TResult when<TResult extends Object?>({
    required TResult Function(String status, DateTime dateFrom, DateTime dateTo,
            int? limit, String? search)
        getByStatus,
    required TResult Function(String id) getById,
    required TResult Function(
            String status, DateTime dateFrom, DateTime dateTo, String? search)
        loadMore,
    required TResult Function(String status) refresh,
  }) =>
      throw _privateConstructorUsedError;
  @optionalTypeArgs
  TResult? whenOrNull<TResult extends Object?>({
    TResult? Function(String status, DateTime dateFrom, DateTime dateTo,
            int? limit, String? search)?
        getByStatus,
    TResult? Function(String id)? getById,
    TResult? Function(
            String status, DateTime dateFrom, DateTime dateTo, String? search)?
        loadMore,
    TResult? Function(String status)? refresh,
  }) =>
      throw _privateConstructorUsedError;
  @optionalTypeArgs
  TResult maybeWhen<TResult extends Object?>({
    TResult Function(String status, DateTime dateFrom, DateTime dateTo,
            int? limit, String? search)?
        getByStatus,
    TResult Function(String id)? getById,
    TResult Function(
            String status, DateTime dateFrom, DateTime dateTo, String? search)?
        loadMore,
    TResult Function(String status)? refresh,
    required TResult orElse(),
  }) =>
      throw _privateConstructorUsedError;
  @optionalTypeArgs
  TResult map<TResult extends Object?>({
    required TResult Function(_GetByStatus value) getByStatus,
    required TResult Function(_GetById value) getById,
    required TResult Function(_LoadMore value) loadMore,
    required TResult Function(_Refresh value) refresh,
  }) =>
      throw _privateConstructorUsedError;
  @optionalTypeArgs
  TResult? mapOrNull<TResult extends Object?>({
    TResult? Function(_GetByStatus value)? getByStatus,
    TResult? Function(_GetById value)? getById,
    TResult? Function(_LoadMore value)? loadMore,
    TResult? Function(_Refresh value)? refresh,
  }) =>
      throw _privateConstructorUsedError;
  @optionalTypeArgs
  TResult maybeMap<TResult extends Object?>({
    TResult Function(_GetByStatus value)? getByStatus,
    TResult Function(_GetById value)? getById,
    TResult Function(_LoadMore value)? loadMore,
    TResult Function(_Refresh value)? refresh,
    required TResult orElse(),
  }) =>
      throw _privateConstructorUsedError;
}

/// @nodoc
abstract class $OrderLoaderEventCopyWith<$Res> {
  factory $OrderLoaderEventCopyWith(
          OrderLoaderEvent value, $Res Function(OrderLoaderEvent) then) =
      _$OrderLoaderEventCopyWithImpl<$Res, OrderLoaderEvent>;
}

/// @nodoc
class _$OrderLoaderEventCopyWithImpl<$Res, $Val extends OrderLoaderEvent>
    implements $OrderLoaderEventCopyWith<$Res> {
  _$OrderLoaderEventCopyWithImpl(this._value, this._then);

  // ignore: unused_field
  final $Val _value;
  // ignore: unused_field
  final $Res Function($Val) _then;

  /// Create a copy of OrderLoaderEvent
  /// with the given fields replaced by the non-null parameter values.
}

/// @nodoc
abstract class _$$GetByStatusImplCopyWith<$Res> {
  factory _$$GetByStatusImplCopyWith(
          _$GetByStatusImpl value, $Res Function(_$GetByStatusImpl) then) =
      __$$GetByStatusImplCopyWithImpl<$Res>;
  @useResult
  $Res call(
      {String status,
      DateTime dateFrom,
      DateTime dateTo,
      int? limit,
      String? search});
}

/// @nodoc
class __$$GetByStatusImplCopyWithImpl<$Res>
    extends _$OrderLoaderEventCopyWithImpl<$Res, _$GetByStatusImpl>
    implements _$$GetByStatusImplCopyWith<$Res> {
  __$$GetByStatusImplCopyWithImpl(
      _$GetByStatusImpl _value, $Res Function(_$GetByStatusImpl) _then)
      : super(_value, _then);

  /// Create a copy of OrderLoaderEvent
  /// with the given fields replaced by the non-null parameter values.
  @pragma('vm:prefer-inline')
  @override
  $Res call({
    Object? status = null,
    Object? dateFrom = null,
    Object? dateTo = null,
    Object? limit = freezed,
    Object? search = freezed,
  }) {
    return _then(_$GetByStatusImpl(
      null == status
          ? _value.status
          : status // ignore: cast_nullable_to_non_nullable
              as String,
      dateFrom: null == dateFrom
          ? _value.dateFrom
          : dateFrom // ignore: cast_nullable_to_non_nullable
              as DateTime,
      dateTo: null == dateTo
          ? _value.dateTo
          : dateTo // ignore: cast_nullable_to_non_nullable
              as DateTime,
      limit: freezed == limit
          ? _value.limit
          : limit // ignore: cast_nullable_to_non_nullable
              as int?,
      search: freezed == search
          ? _value.search
          : search // ignore: cast_nullable_to_non_nullable
              as String?,
    ));
  }
}

/// @nodoc

class _$GetByStatusImpl implements _GetByStatus {
  const _$GetByStatusImpl(this.status,
      {required this.dateFrom, required this.dateTo, this.limit, this.search});

  @override
  final String status;
  @override
  final DateTime dateFrom;
  @override
  final DateTime dateTo;
  @override
  final int? limit;
  @override
  final String? search;

  @override
  String toString() {
    return 'OrderLoaderEvent.getByStatus(status: $status, dateFrom: $dateFrom, dateTo: $dateTo, limit: $limit, search: $search)';
  }

  @override
  bool operator ==(Object other) {
    return identical(this, other) ||
        (other.runtimeType == runtimeType &&
            other is _$GetByStatusImpl &&
            (identical(other.status, status) || other.status == status) &&
            (identical(other.dateFrom, dateFrom) ||
                other.dateFrom == dateFrom) &&
            (identical(other.dateTo, dateTo) || other.dateTo == dateTo) &&
            (identical(other.limit, limit) || other.limit == limit) &&
            (identical(other.search, search) || other.search == search));
  }

  @override
  int get hashCode =>
      Object.hash(runtimeType, status, dateFrom, dateTo, limit, search);

  /// Create a copy of OrderLoaderEvent
  /// with the given fields replaced by the non-null parameter values.
  @JsonKey(includeFromJson: false, includeToJson: false)
  @override
  @pragma('vm:prefer-inline')
  _$$GetByStatusImplCopyWith<_$GetByStatusImpl> get copyWith =>
      __$$GetByStatusImplCopyWithImpl<_$GetByStatusImpl>(this, _$identity);

  @override
  @optionalTypeArgs
  TResult when<TResult extends Object?>({
    required TResult Function(String status, DateTime dateFrom, DateTime dateTo,
            int? limit, String? search)
        getByStatus,
    required TResult Function(String id) getById,
    required TResult Function(
            String status, DateTime dateFrom, DateTime dateTo, String? search)
        loadMore,
    required TResult Function(String status) refresh,
  }) {
    return getByStatus(status, dateFrom, dateTo, limit, search);
  }

  @override
  @optionalTypeArgs
  TResult? whenOrNull<TResult extends Object?>({
    TResult? Function(String status, DateTime dateFrom, DateTime dateTo,
            int? limit, String? search)?
        getByStatus,
    TResult? Function(String id)? getById,
    TResult? Function(
            String status, DateTime dateFrom, DateTime dateTo, String? search)?
        loadMore,
    TResult? Function(String status)? refresh,
  }) {
    return getByStatus?.call(status, dateFrom, dateTo, limit, search);
  }

  @override
  @optionalTypeArgs
  TResult maybeWhen<TResult extends Object?>({
    TResult Function(String status, DateTime dateFrom, DateTime dateTo,
            int? limit, String? search)?
        getByStatus,
    TResult Function(String id)? getById,
    TResult Function(
            String status, DateTime dateFrom, DateTime dateTo, String? search)?
        loadMore,
    TResult Function(String status)? refresh,
    required TResult orElse(),
  }) {
    if (getByStatus != null) {
      return getByStatus(status, dateFrom, dateTo, limit, search);
    }
    return orElse();
  }

  @override
  @optionalTypeArgs
  TResult map<TResult extends Object?>({
    required TResult Function(_GetByStatus value) getByStatus,
    required TResult Function(_GetById value) getById,
    required TResult Function(_LoadMore value) loadMore,
    required TResult Function(_Refresh value) refresh,
  }) {
    return getByStatus(this);
  }

  @override
  @optionalTypeArgs
  TResult? mapOrNull<TResult extends Object?>({
    TResult? Function(_GetByStatus value)? getByStatus,
    TResult? Function(_GetById value)? getById,
    TResult? Function(_LoadMore value)? loadMore,
    TResult? Function(_Refresh value)? refresh,
  }) {
    return getByStatus?.call(this);
  }

  @override
  @optionalTypeArgs
  TResult maybeMap<TResult extends Object?>({
    TResult Function(_GetByStatus value)? getByStatus,
    TResult Function(_GetById value)? getById,
    TResult Function(_LoadMore value)? loadMore,
    TResult Function(_Refresh value)? refresh,
    required TResult orElse(),
  }) {
    if (getByStatus != null) {
      return getByStatus(this);
    }
    return orElse();
  }
}

abstract class _GetByStatus implements OrderLoaderEvent {
  const factory _GetByStatus(final String status,
      {required final DateTime dateFrom,
      required final DateTime dateTo,
      final int? limit,
      final String? search}) = _$GetByStatusImpl;

  String get status;
  DateTime get dateFrom;
  DateTime get dateTo;
  int? get limit;
  String? get search;

  /// Create a copy of OrderLoaderEvent
  /// with the given fields replaced by the non-null parameter values.
  @JsonKey(includeFromJson: false, includeToJson: false)
  _$$GetByStatusImplCopyWith<_$GetByStatusImpl> get copyWith =>
      throw _privateConstructorUsedError;
}

/// @nodoc
abstract class _$$GetByIdImplCopyWith<$Res> {
  factory _$$GetByIdImplCopyWith(
          _$GetByIdImpl value, $Res Function(_$GetByIdImpl) then) =
      __$$GetByIdImplCopyWithImpl<$Res>;
  @useResult
  $Res call({String id});
}

/// @nodoc
class __$$GetByIdImplCopyWithImpl<$Res>
    extends _$OrderLoaderEventCopyWithImpl<$Res, _$GetByIdImpl>
    implements _$$GetByIdImplCopyWith<$Res> {
  __$$GetByIdImplCopyWithImpl(
      _$GetByIdImpl _value, $Res Function(_$GetByIdImpl) _then)
      : super(_value, _then);

  /// Create a copy of OrderLoaderEvent
  /// with the given fields replaced by the non-null parameter values.
  @pragma('vm:prefer-inline')
  @override
  $Res call({
    Object? id = null,
  }) {
    return _then(_$GetByIdImpl(
      null == id
          ? _value.id
          : id // ignore: cast_nullable_to_non_nullable
              as String,
    ));
  }
}

/// @nodoc

class _$GetByIdImpl implements _GetById {
  const _$GetByIdImpl(this.id);

  @override
  final String id;

  @override
  String toString() {
    return 'OrderLoaderEvent.getById(id: $id)';
  }

  @override
  bool operator ==(Object other) {
    return identical(this, other) ||
        (other.runtimeType == runtimeType &&
            other is _$GetByIdImpl &&
            (identical(other.id, id) || other.id == id));
  }

  @override
  int get hashCode => Object.hash(runtimeType, id);

  /// Create a copy of OrderLoaderEvent
  /// with the given fields replaced by the non-null parameter values.
  @JsonKey(includeFromJson: false, includeToJson: false)
  @override
  @pragma('vm:prefer-inline')
  _$$GetByIdImplCopyWith<_$GetByIdImpl> get copyWith =>
      __$$GetByIdImplCopyWithImpl<_$GetByIdImpl>(this, _$identity);

  @override
  @optionalTypeArgs
  TResult when<TResult extends Object?>({
    required TResult Function(String status, DateTime dateFrom, DateTime dateTo,
            int? limit, String? search)
        getByStatus,
    required TResult Function(String id) getById,
    required TResult Function(
            String status, DateTime dateFrom, DateTime dateTo, String? search)
        loadMore,
    required TResult Function(String status) refresh,
  }) {
    return getById(id);
  }

  @override
  @optionalTypeArgs
  TResult? whenOrNull<TResult extends Object?>({
    TResult? Function(String status, DateTime dateFrom, DateTime dateTo,
            int? limit, String? search)?
        getByStatus,
    TResult? Function(String id)? getById,
    TResult? Function(
            String status, DateTime dateFrom, DateTime dateTo, String? search)?
        loadMore,
    TResult? Function(String status)? refresh,
  }) {
    return getById?.call(id);
  }

  @override
  @optionalTypeArgs
  TResult maybeWhen<TResult extends Object?>({
    TResult Function(String status, DateTime dateFrom, DateTime dateTo,
            int? limit, String? search)?
        getByStatus,
    TResult Function(String id)? getById,
    TResult Function(
            String status, DateTime dateFrom, DateTime dateTo, String? search)?
        loadMore,
    TResult Function(String status)? refresh,
    required TResult orElse(),
  }) {
    if (getById != null) {
      return getById(id);
    }
    return orElse();
  }

  @override
  @optionalTypeArgs
  TResult map<TResult extends Object?>({
    required TResult Function(_GetByStatus value) getByStatus,
    required TResult Function(_GetById value) getById,
    required TResult Function(_LoadMore value) loadMore,
    required TResult Function(_Refresh value) refresh,
  }) {
    return getById(this);
  }

  @override
  @optionalTypeArgs
  TResult? mapOrNull<TResult extends Object?>({
    TResult? Function(_GetByStatus value)? getByStatus,
    TResult? Function(_GetById value)? getById,
    TResult? Function(_LoadMore value)? loadMore,
    TResult? Function(_Refresh value)? refresh,
  }) {
    return getById?.call(this);
  }

  @override
  @optionalTypeArgs
  TResult maybeMap<TResult extends Object?>({
    TResult Function(_GetByStatus value)? getByStatus,
    TResult Function(_GetById value)? getById,
    TResult Function(_LoadMore value)? loadMore,
    TResult Function(_Refresh value)? refresh,
    required TResult orElse(),
  }) {
    if (getById != null) {
      return getById(this);
    }
    return orElse();
  }
}

abstract class _GetById implements OrderLoaderEvent {
  const factory _GetById(final String id) = _$GetByIdImpl;

  String get id;

  /// Create a copy of OrderLoaderEvent
  /// with the given fields replaced by the non-null parameter values.
  @JsonKey(includeFromJson: false, includeToJson: false)
  _$$GetByIdImplCopyWith<_$GetByIdImpl> get copyWith =>
      throw _privateConstructorUsedError;
}

/// @nodoc
abstract class _$$LoadMoreImplCopyWith<$Res> {
  factory _$$LoadMoreImplCopyWith(
          _$LoadMoreImpl value, $Res Function(_$LoadMoreImpl) then) =
      __$$LoadMoreImplCopyWithImpl<$Res>;
  @useResult
  $Res call(
      {String status, DateTime dateFrom, DateTime dateTo, String? search});
}

/// @nodoc
class __$$LoadMoreImplCopyWithImpl<$Res>
    extends _$OrderLoaderEventCopyWithImpl<$Res, _$LoadMoreImpl>
    implements _$$LoadMoreImplCopyWith<$Res> {
  __$$LoadMoreImplCopyWithImpl(
      _$LoadMoreImpl _value, $Res Function(_$LoadMoreImpl) _then)
      : super(_value, _then);

  /// Create a copy of OrderLoaderEvent
  /// with the given fields replaced by the non-null parameter values.
  @pragma('vm:prefer-inline')
  @override
  $Res call({
    Object? status = null,
    Object? dateFrom = null,
    Object? dateTo = null,
    Object? search = freezed,
  }) {
    return _then(_$LoadMoreImpl(
      null == status
          ? _value.status
          : status // ignore: cast_nullable_to_non_nullable
              as String,
      dateFrom: null == dateFrom
          ? _value.dateFrom
          : dateFrom // ignore: cast_nullable_to_non_nullable
              as DateTime,
      dateTo: null == dateTo
          ? _value.dateTo
          : dateTo // ignore: cast_nullable_to_non_nullable
              as DateTime,
      search: freezed == search
          ? _value.search
          : search // ignore: cast_nullable_to_non_nullable
              as String?,
    ));
  }
}

/// @nodoc

class _$LoadMoreImpl implements _LoadMore {
  const _$LoadMoreImpl(this.status,
      {required this.dateFrom, required this.dateTo, this.search});

  @override
  final String status;
  @override
  final DateTime dateFrom;
  @override
  final DateTime dateTo;
  @override
  final String? search;

  @override
  String toString() {
    return 'OrderLoaderEvent.loadMore(status: $status, dateFrom: $dateFrom, dateTo: $dateTo, search: $search)';
  }

  @override
  bool operator ==(Object other) {
    return identical(this, other) ||
        (other.runtimeType == runtimeType &&
            other is _$LoadMoreImpl &&
            (identical(other.status, status) || other.status == status) &&
            (identical(other.dateFrom, dateFrom) ||
                other.dateFrom == dateFrom) &&
            (identical(other.dateTo, dateTo) || other.dateTo == dateTo) &&
            (identical(other.search, search) || other.search == search));
  }

  @override
  int get hashCode =>
      Object.hash(runtimeType, status, dateFrom, dateTo, search);

  /// Create a copy of OrderLoaderEvent
  /// with the given fields replaced by the non-null parameter values.
  @JsonKey(includeFromJson: false, includeToJson: false)
  @override
  @pragma('vm:prefer-inline')
  _$$LoadMoreImplCopyWith<_$LoadMoreImpl> get copyWith =>
      __$$LoadMoreImplCopyWithImpl<_$LoadMoreImpl>(this, _$identity);

  @override
  @optionalTypeArgs
  TResult when<TResult extends Object?>({
    required TResult Function(String status, DateTime dateFrom, DateTime dateTo,
            int? limit, String? search)
        getByStatus,
    required TResult Function(String id) getById,
    required TResult Function(
            String status, DateTime dateFrom, DateTime dateTo, String? search)
        loadMore,
    required TResult Function(String status) refresh,
  }) {
    return loadMore(status, dateFrom, dateTo, search);
  }

  @override
  @optionalTypeArgs
  TResult? whenOrNull<TResult extends Object?>({
    TResult? Function(String status, DateTime dateFrom, DateTime dateTo,
            int? limit, String? search)?
        getByStatus,
    TResult? Function(String id)? getById,
    TResult? Function(
            String status, DateTime dateFrom, DateTime dateTo, String? search)?
        loadMore,
    TResult? Function(String status)? refresh,
  }) {
    return loadMore?.call(status, dateFrom, dateTo, search);
  }

  @override
  @optionalTypeArgs
  TResult maybeWhen<TResult extends Object?>({
    TResult Function(String status, DateTime dateFrom, DateTime dateTo,
            int? limit, String? search)?
        getByStatus,
    TResult Function(String id)? getById,
    TResult Function(
            String status, DateTime dateFrom, DateTime dateTo, String? search)?
        loadMore,
    TResult Function(String status)? refresh,
    required TResult orElse(),
  }) {
    if (loadMore != null) {
      return loadMore(status, dateFrom, dateTo, search);
    }
    return orElse();
  }

  @override
  @optionalTypeArgs
  TResult map<TResult extends Object?>({
    required TResult Function(_GetByStatus value) getByStatus,
    required TResult Function(_GetById value) getById,
    required TResult Function(_LoadMore value) loadMore,
    required TResult Function(_Refresh value) refresh,
  }) {
    return loadMore(this);
  }

  @override
  @optionalTypeArgs
  TResult? mapOrNull<TResult extends Object?>({
    TResult? Function(_GetByStatus value)? getByStatus,
    TResult? Function(_GetById value)? getById,
    TResult? Function(_LoadMore value)? loadMore,
    TResult? Function(_Refresh value)? refresh,
  }) {
    return loadMore?.call(this);
  }

  @override
  @optionalTypeArgs
  TResult maybeMap<TResult extends Object?>({
    TResult Function(_GetByStatus value)? getByStatus,
    TResult Function(_GetById value)? getById,
    TResult Function(_LoadMore value)? loadMore,
    TResult Function(_Refresh value)? refresh,
    required TResult orElse(),
  }) {
    if (loadMore != null) {
      return loadMore(this);
    }
    return orElse();
  }
}

abstract class _LoadMore implements OrderLoaderEvent {
  const factory _LoadMore(final String status,
      {required final DateTime dateFrom,
      required final DateTime dateTo,
      final String? search}) = _$LoadMoreImpl;

  String get status;
  DateTime get dateFrom;
  DateTime get dateTo;
  String? get search;

  /// Create a copy of OrderLoaderEvent
  /// with the given fields replaced by the non-null parameter values.
  @JsonKey(includeFromJson: false, includeToJson: false)
  _$$LoadMoreImplCopyWith<_$LoadMoreImpl> get copyWith =>
      throw _privateConstructorUsedError;
}

/// @nodoc
abstract class _$$RefreshImplCopyWith<$Res> {
  factory _$$RefreshImplCopyWith(
          _$RefreshImpl value, $Res Function(_$RefreshImpl) then) =
      __$$RefreshImplCopyWithImpl<$Res>;
  @useResult
  $Res call({String status});
}

/// @nodoc
class __$$RefreshImplCopyWithImpl<$Res>
    extends _$OrderLoaderEventCopyWithImpl<$Res, _$RefreshImpl>
    implements _$$RefreshImplCopyWith<$Res> {
  __$$RefreshImplCopyWithImpl(
      _$RefreshImpl _value, $Res Function(_$RefreshImpl) _then)
      : super(_value, _then);

  /// Create a copy of OrderLoaderEvent
  /// with the given fields replaced by the non-null parameter values.
  @pragma('vm:prefer-inline')
  @override
  $Res call({
    Object? status = null,
  }) {
    return _then(_$RefreshImpl(
      null == status
          ? _value.status
          : status // ignore: cast_nullable_to_non_nullable
              as String,
    ));
  }
}

/// @nodoc

class _$RefreshImpl implements _Refresh {
  const _$RefreshImpl(this.status);

  @override
  final String status;

  @override
  String toString() {
    return 'OrderLoaderEvent.refresh(status: $status)';
  }

  @override
  bool operator ==(Object other) {
    return identical(this, other) ||
        (other.runtimeType == runtimeType &&
            other is _$RefreshImpl &&
            (identical(other.status, status) || other.status == status));
  }

  @override
  int get hashCode => Object.hash(runtimeType, status);

  /// Create a copy of OrderLoaderEvent
  /// with the given fields replaced by the non-null parameter values.
  @JsonKey(includeFromJson: false, includeToJson: false)
  @override
  @pragma('vm:prefer-inline')
  _$$RefreshImplCopyWith<_$RefreshImpl> get copyWith =>
      __$$RefreshImplCopyWithImpl<_$RefreshImpl>(this, _$identity);

  @override
  @optionalTypeArgs
  TResult when<TResult extends Object?>({
    required TResult Function(String status, DateTime dateFrom, DateTime dateTo,
            int? limit, String? search)
        getByStatus,
    required TResult Function(String id) getById,
    required TResult Function(
            String status, DateTime dateFrom, DateTime dateTo, String? search)
        loadMore,
    required TResult Function(String status) refresh,
  }) {
    return refresh(status);
  }

  @override
  @optionalTypeArgs
  TResult? whenOrNull<TResult extends Object?>({
    TResult? Function(String status, DateTime dateFrom, DateTime dateTo,
            int? limit, String? search)?
        getByStatus,
    TResult? Function(String id)? getById,
    TResult? Function(
            String status, DateTime dateFrom, DateTime dateTo, String? search)?
        loadMore,
    TResult? Function(String status)? refresh,
  }) {
    return refresh?.call(status);
  }

  @override
  @optionalTypeArgs
  TResult maybeWhen<TResult extends Object?>({
    TResult Function(String status, DateTime dateFrom, DateTime dateTo,
            int? limit, String? search)?
        getByStatus,
    TResult Function(String id)? getById,
    TResult Function(
            String status, DateTime dateFrom, DateTime dateTo, String? search)?
        loadMore,
    TResult Function(String status)? refresh,
    required TResult orElse(),
  }) {
    if (refresh != null) {
      return refresh(status);
    }
    return orElse();
  }

  @override
  @optionalTypeArgs
  TResult map<TResult extends Object?>({
    required TResult Function(_GetByStatus value) getByStatus,
    required TResult Function(_GetById value) getById,
    required TResult Function(_LoadMore value) loadMore,
    required TResult Function(_Refresh value) refresh,
  }) {
    return refresh(this);
  }

  @override
  @optionalTypeArgs
  TResult? mapOrNull<TResult extends Object?>({
    TResult? Function(_GetByStatus value)? getByStatus,
    TResult? Function(_GetById value)? getById,
    TResult? Function(_LoadMore value)? loadMore,
    TResult? Function(_Refresh value)? refresh,
  }) {
    return refresh?.call(this);
  }

  @override
  @optionalTypeArgs
  TResult maybeMap<TResult extends Object?>({
    TResult Function(_GetByStatus value)? getByStatus,
    TResult Function(_GetById value)? getById,
    TResult Function(_LoadMore value)? loadMore,
    TResult Function(_Refresh value)? refresh,
    required TResult orElse(),
  }) {
    if (refresh != null) {
      return refresh(this);
    }
    return orElse();
  }
}

abstract class _Refresh implements OrderLoaderEvent {
  const factory _Refresh(final String status) = _$RefreshImpl;

  String get status;

  /// Create a copy of OrderLoaderEvent
  /// with the given fields replaced by the non-null parameter values.
  @JsonKey(includeFromJson: false, includeToJson: false)
  _$$RefreshImplCopyWith<_$RefreshImpl> get copyWith =>
      throw _privateConstructorUsedError;
}

/// @nodoc
mixin _$OrderLoaderState {
  @optionalTypeArgs
  TResult when<TResult extends Object?>({
    required TResult Function() initial,
    required TResult Function() loading,
    required TResult Function(List<Order> orders, int totalOrder,
            bool hasReachedMax, int currentPage, bool isLoadingMore)
        loaded,
    required TResult Function(String message) error,
    required TResult Function(Order order) loadedDetail,
  }) =>
      throw _privateConstructorUsedError;
  @optionalTypeArgs
  TResult? whenOrNull<TResult extends Object?>({
    TResult? Function()? initial,
    TResult? Function()? loading,
    TResult? Function(List<Order> orders, int totalOrder, bool hasReachedMax,
            int currentPage, bool isLoadingMore)?
        loaded,
    TResult? Function(String message)? error,
    TResult? Function(Order order)? loadedDetail,
  }) =>
      throw _privateConstructorUsedError;
  @optionalTypeArgs
  TResult maybeWhen<TResult extends Object?>({
    TResult Function()? initial,
    TResult Function()? loading,
    TResult Function(List<Order> orders, int totalOrder, bool hasReachedMax,
            int currentPage, bool isLoadingMore)?
        loaded,
    TResult Function(String message)? error,
    TResult Function(Order order)? loadedDetail,
    required TResult orElse(),
  }) =>
      throw _privateConstructorUsedError;
  @optionalTypeArgs
  TResult map<TResult extends Object?>({
    required TResult Function(_Initial value) initial,
    required TResult Function(_Loading value) loading,
    required TResult Function(_Loaded value) loaded,
    required TResult Function(_Error value) error,
    required TResult Function(_LoadedDetail value) loadedDetail,
  }) =>
      throw _privateConstructorUsedError;
  @optionalTypeArgs
  TResult? mapOrNull<TResult extends Object?>({
    TResult? Function(_Initial value)? initial,
    TResult? Function(_Loading value)? loading,
    TResult? Function(_Loaded value)? loaded,
    TResult? Function(_Error value)? error,
    TResult? Function(_LoadedDetail value)? loadedDetail,
  }) =>
      throw _privateConstructorUsedError;
  @optionalTypeArgs
  TResult maybeMap<TResult extends Object?>({
    TResult Function(_Initial value)? initial,
    TResult Function(_Loading value)? loading,
    TResult Function(_Loaded value)? loaded,
    TResult Function(_Error value)? error,
    TResult Function(_LoadedDetail value)? loadedDetail,
    required TResult orElse(),
  }) =>
      throw _privateConstructorUsedError;
}

/// @nodoc
abstract class $OrderLoaderStateCopyWith<$Res> {
  factory $OrderLoaderStateCopyWith(
          OrderLoaderState value, $Res Function(OrderLoaderState) then) =
      _$OrderLoaderStateCopyWithImpl<$Res, OrderLoaderState>;
}

/// @nodoc
class _$OrderLoaderStateCopyWithImpl<$Res, $Val extends OrderLoaderState>
    implements $OrderLoaderStateCopyWith<$Res> {
  _$OrderLoaderStateCopyWithImpl(this._value, this._then);

  // ignore: unused_field
  final $Val _value;
  // ignore: unused_field
  final $Res Function($Val) _then;

  /// Create a copy of OrderLoaderState
  /// with the given fields replaced by the non-null parameter values.
}

/// @nodoc
abstract class _$$InitialImplCopyWith<$Res> {
  factory _$$InitialImplCopyWith(
          _$InitialImpl value, $Res Function(_$InitialImpl) then) =
      __$$InitialImplCopyWithImpl<$Res>;
}

/// @nodoc
class __$$InitialImplCopyWithImpl<$Res>
    extends _$OrderLoaderStateCopyWithImpl<$Res, _$InitialImpl>
    implements _$$InitialImplCopyWith<$Res> {
  __$$InitialImplCopyWithImpl(
      _$InitialImpl _value, $Res Function(_$InitialImpl) _then)
      : super(_value, _then);

  /// Create a copy of OrderLoaderState
  /// with the given fields replaced by the non-null parameter values.
}

/// @nodoc

class _$InitialImpl implements _Initial {
  const _$InitialImpl();

  @override
  String toString() {
    return 'OrderLoaderState.initial()';
  }

  @override
  bool operator ==(Object other) {
    return identical(this, other) ||
        (other.runtimeType == runtimeType && other is _$InitialImpl);
  }

  @override
  int get hashCode => runtimeType.hashCode;

  @override
  @optionalTypeArgs
  TResult when<TResult extends Object?>({
    required TResult Function() initial,
    required TResult Function() loading,
    required TResult Function(List<Order> orders, int totalOrder,
            bool hasReachedMax, int currentPage, bool isLoadingMore)
        loaded,
    required TResult Function(String message) error,
    required TResult Function(Order order) loadedDetail,
  }) {
    return initial();
  }

  @override
  @optionalTypeArgs
  TResult? whenOrNull<TResult extends Object?>({
    TResult? Function()? initial,
    TResult? Function()? loading,
    TResult? Function(List<Order> orders, int totalOrder, bool hasReachedMax,
            int currentPage, bool isLoadingMore)?
        loaded,
    TResult? Function(String message)? error,
    TResult? Function(Order order)? loadedDetail,
  }) {
    return initial?.call();
  }

  @override
  @optionalTypeArgs
  TResult maybeWhen<TResult extends Object?>({
    TResult Function()? initial,
    TResult Function()? loading,
    TResult Function(List<Order> orders, int totalOrder, bool hasReachedMax,
            int currentPage, bool isLoadingMore)?
        loaded,
    TResult Function(String message)? error,
    TResult Function(Order order)? loadedDetail,
    required TResult orElse(),
  }) {
    if (initial != null) {
      return initial();
    }
    return orElse();
  }

  @override
  @optionalTypeArgs
  TResult map<TResult extends Object?>({
    required TResult Function(_Initial value) initial,
    required TResult Function(_Loading value) loading,
    required TResult Function(_Loaded value) loaded,
    required TResult Function(_Error value) error,
    required TResult Function(_LoadedDetail value) loadedDetail,
  }) {
    return initial(this);
  }

  @override
  @optionalTypeArgs
  TResult? mapOrNull<TResult extends Object?>({
    TResult? Function(_Initial value)? initial,
    TResult? Function(_Loading value)? loading,
    TResult? Function(_Loaded value)? loaded,
    TResult? Function(_Error value)? error,
    TResult? Function(_LoadedDetail value)? loadedDetail,
  }) {
    return initial?.call(this);
  }

  @override
  @optionalTypeArgs
  TResult maybeMap<TResult extends Object?>({
    TResult Function(_Initial value)? initial,
    TResult Function(_Loading value)? loading,
    TResult Function(_Loaded value)? loaded,
    TResult Function(_Error value)? error,
    TResult Function(_LoadedDetail value)? loadedDetail,
    required TResult orElse(),
  }) {
    if (initial != null) {
      return initial(this);
    }
    return orElse();
  }
}

abstract class _Initial implements OrderLoaderState {
  const factory _Initial() = _$InitialImpl;
}

/// @nodoc
abstract class _$$LoadingImplCopyWith<$Res> {
  factory _$$LoadingImplCopyWith(
          _$LoadingImpl value, $Res Function(_$LoadingImpl) then) =
      __$$LoadingImplCopyWithImpl<$Res>;
}

/// @nodoc
class __$$LoadingImplCopyWithImpl<$Res>
    extends _$OrderLoaderStateCopyWithImpl<$Res, _$LoadingImpl>
    implements _$$LoadingImplCopyWith<$Res> {
  __$$LoadingImplCopyWithImpl(
      _$LoadingImpl _value, $Res Function(_$LoadingImpl) _then)
      : super(_value, _then);

  /// Create a copy of OrderLoaderState
  /// with the given fields replaced by the non-null parameter values.
}

/// @nodoc

class _$LoadingImpl implements _Loading {
  const _$LoadingImpl();

  @override
  String toString() {
    return 'OrderLoaderState.loading()';
  }

  @override
  bool operator ==(Object other) {
    return identical(this, other) ||
        (other.runtimeType == runtimeType && other is _$LoadingImpl);
  }

  @override
  int get hashCode => runtimeType.hashCode;

  @override
  @optionalTypeArgs
  TResult when<TResult extends Object?>({
    required TResult Function() initial,
    required TResult Function() loading,
    required TResult Function(List<Order> orders, int totalOrder,
            bool hasReachedMax, int currentPage, bool isLoadingMore)
        loaded,
    required TResult Function(String message) error,
    required TResult Function(Order order) loadedDetail,
  }) {
    return loading();
  }

  @override
  @optionalTypeArgs
  TResult? whenOrNull<TResult extends Object?>({
    TResult? Function()? initial,
    TResult? Function()? loading,
    TResult? Function(List<Order> orders, int totalOrder, bool hasReachedMax,
            int currentPage, bool isLoadingMore)?
        loaded,
    TResult? Function(String message)? error,
    TResult? Function(Order order)? loadedDetail,
  }) {
    return loading?.call();
  }

  @override
  @optionalTypeArgs
  TResult maybeWhen<TResult extends Object?>({
    TResult Function()? initial,
    TResult Function()? loading,
    TResult Function(List<Order> orders, int totalOrder, bool hasReachedMax,
            int currentPage, bool isLoadingMore)?
        loaded,
    TResult Function(String message)? error,
    TResult Function(Order order)? loadedDetail,
    required TResult orElse(),
  }) {
    if (loading != null) {
      return loading();
    }
    return orElse();
  }

  @override
  @optionalTypeArgs
  TResult map<TResult extends Object?>({
    required TResult Function(_Initial value) initial,
    required TResult Function(_Loading value) loading,
    required TResult Function(_Loaded value) loaded,
    required TResult Function(_Error value) error,
    required TResult Function(_LoadedDetail value) loadedDetail,
  }) {
    return loading(this);
  }

  @override
  @optionalTypeArgs
  TResult? mapOrNull<TResult extends Object?>({
    TResult? Function(_Initial value)? initial,
    TResult? Function(_Loading value)? loading,
    TResult? Function(_Loaded value)? loaded,
    TResult? Function(_Error value)? error,
    TResult? Function(_LoadedDetail value)? loadedDetail,
  }) {
    return loading?.call(this);
  }

  @override
  @optionalTypeArgs
  TResult maybeMap<TResult extends Object?>({
    TResult Function(_Initial value)? initial,
    TResult Function(_Loading value)? loading,
    TResult Function(_Loaded value)? loaded,
    TResult Function(_Error value)? error,
    TResult Function(_LoadedDetail value)? loadedDetail,
    required TResult orElse(),
  }) {
    if (loading != null) {
      return loading(this);
    }
    return orElse();
  }
}

abstract class _Loading implements OrderLoaderState {
  const factory _Loading() = _$LoadingImpl;
}

/// @nodoc
abstract class _$$LoadedImplCopyWith<$Res> {
  factory _$$LoadedImplCopyWith(
          _$LoadedImpl value, $Res Function(_$LoadedImpl) then) =
      __$$LoadedImplCopyWithImpl<$Res>;
  @useResult
  $Res call(
      {List<Order> orders,
      int totalOrder,
      bool hasReachedMax,
      int currentPage,
      bool isLoadingMore});
}

/// @nodoc
class __$$LoadedImplCopyWithImpl<$Res>
    extends _$OrderLoaderStateCopyWithImpl<$Res, _$LoadedImpl>
    implements _$$LoadedImplCopyWith<$Res> {
  __$$LoadedImplCopyWithImpl(
      _$LoadedImpl _value, $Res Function(_$LoadedImpl) _then)
      : super(_value, _then);

  /// Create a copy of OrderLoaderState
  /// with the given fields replaced by the non-null parameter values.
  @pragma('vm:prefer-inline')
  @override
  $Res call({
    Object? orders = null,
    Object? totalOrder = null,
    Object? hasReachedMax = null,
    Object? currentPage = null,
    Object? isLoadingMore = null,
  }) {
    return _then(_$LoadedImpl(
      orders: null == orders
          ? _value._orders
          : orders // ignore: cast_nullable_to_non_nullable
              as List<Order>,
      totalOrder: null == totalOrder
          ? _value.totalOrder
          : totalOrder // ignore: cast_nullable_to_non_nullable
              as int,
      hasReachedMax: null == hasReachedMax
          ? _value.hasReachedMax
          : hasReachedMax // ignore: cast_nullable_to_non_nullable
              as bool,
      currentPage: null == currentPage
          ? _value.currentPage
          : currentPage // ignore: cast_nullable_to_non_nullable
              as int,
      isLoadingMore: null == isLoadingMore
          ? _value.isLoadingMore
          : isLoadingMore // ignore: cast_nullable_to_non_nullable
              as bool,
    ));
  }
}

/// @nodoc

class _$LoadedImpl implements _Loaded {
  const _$LoadedImpl(
      {required final List<Order> orders,
      required this.totalOrder,
      required this.hasReachedMax,
      required this.currentPage,
      required this.isLoadingMore})
      : _orders = orders;

  final List<Order> _orders;
  @override
  List<Order> get orders {
    if (_orders is EqualUnmodifiableListView) return _orders;
    // ignore: implicit_dynamic_type
    return EqualUnmodifiableListView(_orders);
  }

  @override
  final int totalOrder;
  @override
  final bool hasReachedMax;
  @override
  final int currentPage;
  @override
  final bool isLoadingMore;

  @override
  String toString() {
    return 'OrderLoaderState.loaded(orders: $orders, totalOrder: $totalOrder, hasReachedMax: $hasReachedMax, currentPage: $currentPage, isLoadingMore: $isLoadingMore)';
  }

  @override
  bool operator ==(Object other) {
    return identical(this, other) ||
        (other.runtimeType == runtimeType &&
            other is _$LoadedImpl &&
            const DeepCollectionEquality().equals(other._orders, _orders) &&
            (identical(other.totalOrder, totalOrder) ||
                other.totalOrder == totalOrder) &&
            (identical(other.hasReachedMax, hasReachedMax) ||
                other.hasReachedMax == hasReachedMax) &&
            (identical(other.currentPage, currentPage) ||
                other.currentPage == currentPage) &&
            (identical(other.isLoadingMore, isLoadingMore) ||
                other.isLoadingMore == isLoadingMore));
  }

  @override
  int get hashCode => Object.hash(
      runtimeType,
      const DeepCollectionEquality().hash(_orders),
      totalOrder,
      hasReachedMax,
      currentPage,
      isLoadingMore);

  /// Create a copy of OrderLoaderState
  /// with the given fields replaced by the non-null parameter values.
  @JsonKey(includeFromJson: false, includeToJson: false)
  @override
  @pragma('vm:prefer-inline')
  _$$LoadedImplCopyWith<_$LoadedImpl> get copyWith =>
      __$$LoadedImplCopyWithImpl<_$LoadedImpl>(this, _$identity);

  @override
  @optionalTypeArgs
  TResult when<TResult extends Object?>({
    required TResult Function() initial,
    required TResult Function() loading,
    required TResult Function(List<Order> orders, int totalOrder,
            bool hasReachedMax, int currentPage, bool isLoadingMore)
        loaded,
    required TResult Function(String message) error,
    required TResult Function(Order order) loadedDetail,
  }) {
    return loaded(
        orders, totalOrder, hasReachedMax, currentPage, isLoadingMore);
  }

  @override
  @optionalTypeArgs
  TResult? whenOrNull<TResult extends Object?>({
    TResult? Function()? initial,
    TResult? Function()? loading,
    TResult? Function(List<Order> orders, int totalOrder, bool hasReachedMax,
            int currentPage, bool isLoadingMore)?
        loaded,
    TResult? Function(String message)? error,
    TResult? Function(Order order)? loadedDetail,
  }) {
    return loaded?.call(
        orders, totalOrder, hasReachedMax, currentPage, isLoadingMore);
  }

  @override
  @optionalTypeArgs
  TResult maybeWhen<TResult extends Object?>({
    TResult Function()? initial,
    TResult Function()? loading,
    TResult Function(List<Order> orders, int totalOrder, bool hasReachedMax,
            int currentPage, bool isLoadingMore)?
        loaded,
    TResult Function(String message)? error,
    TResult Function(Order order)? loadedDetail,
    required TResult orElse(),
  }) {
    if (loaded != null) {
      return loaded(
          orders, totalOrder, hasReachedMax, currentPage, isLoadingMore);
    }
    return orElse();
  }

  @override
  @optionalTypeArgs
  TResult map<TResult extends Object?>({
    required TResult Function(_Initial value) initial,
    required TResult Function(_Loading value) loading,
    required TResult Function(_Loaded value) loaded,
    required TResult Function(_Error value) error,
    required TResult Function(_LoadedDetail value) loadedDetail,
  }) {
    return loaded(this);
  }

  @override
  @optionalTypeArgs
  TResult? mapOrNull<TResult extends Object?>({
    TResult? Function(_Initial value)? initial,
    TResult? Function(_Loading value)? loading,
    TResult? Function(_Loaded value)? loaded,
    TResult? Function(_Error value)? error,
    TResult? Function(_LoadedDetail value)? loadedDetail,
  }) {
    return loaded?.call(this);
  }

  @override
  @optionalTypeArgs
  TResult maybeMap<TResult extends Object?>({
    TResult Function(_Initial value)? initial,
    TResult Function(_Loading value)? loading,
    TResult Function(_Loaded value)? loaded,
    TResult Function(_Error value)? error,
    TResult Function(_LoadedDetail value)? loadedDetail,
    required TResult orElse(),
  }) {
    if (loaded != null) {
      return loaded(this);
    }
    return orElse();
  }
}

abstract class _Loaded implements OrderLoaderState {
  const factory _Loaded(
      {required final List<Order> orders,
      required final int totalOrder,
      required final bool hasReachedMax,
      required final int currentPage,
      required final bool isLoadingMore}) = _$LoadedImpl;

  List<Order> get orders;
  int get totalOrder;
  bool get hasReachedMax;
  int get currentPage;
  bool get isLoadingMore;

  /// Create a copy of OrderLoaderState
  /// with the given fields replaced by the non-null parameter values.
  @JsonKey(includeFromJson: false, includeToJson: false)
  _$$LoadedImplCopyWith<_$LoadedImpl> get copyWith =>
      throw _privateConstructorUsedError;
}

/// @nodoc
abstract class _$$ErrorImplCopyWith<$Res> {
  factory _$$ErrorImplCopyWith(
          _$ErrorImpl value, $Res Function(_$ErrorImpl) then) =
      __$$ErrorImplCopyWithImpl<$Res>;
  @useResult
  $Res call({String message});
}

/// @nodoc
class __$$ErrorImplCopyWithImpl<$Res>
    extends _$OrderLoaderStateCopyWithImpl<$Res, _$ErrorImpl>
    implements _$$ErrorImplCopyWith<$Res> {
  __$$ErrorImplCopyWithImpl(
      _$ErrorImpl _value, $Res Function(_$ErrorImpl) _then)
      : super(_value, _then);

  /// Create a copy of OrderLoaderState
  /// with the given fields replaced by the non-null parameter values.
  @pragma('vm:prefer-inline')
  @override
  $Res call({
    Object? message = null,
  }) {
    return _then(_$ErrorImpl(
      null == message
          ? _value.message
          : message // ignore: cast_nullable_to_non_nullable
              as String,
    ));
  }
}

/// @nodoc

class _$ErrorImpl implements _Error {
  const _$ErrorImpl(this.message);

  @override
  final String message;

  @override
  String toString() {
    return 'OrderLoaderState.error(message: $message)';
  }

  @override
  bool operator ==(Object other) {
    return identical(this, other) ||
        (other.runtimeType == runtimeType &&
            other is _$ErrorImpl &&
            (identical(other.message, message) || other.message == message));
  }

  @override
  int get hashCode => Object.hash(runtimeType, message);

  /// Create a copy of OrderLoaderState
  /// with the given fields replaced by the non-null parameter values.
  @JsonKey(includeFromJson: false, includeToJson: false)
  @override
  @pragma('vm:prefer-inline')
  _$$ErrorImplCopyWith<_$ErrorImpl> get copyWith =>
      __$$ErrorImplCopyWithImpl<_$ErrorImpl>(this, _$identity);

  @override
  @optionalTypeArgs
  TResult when<TResult extends Object?>({
    required TResult Function() initial,
    required TResult Function() loading,
    required TResult Function(List<Order> orders, int totalOrder,
            bool hasReachedMax, int currentPage, bool isLoadingMore)
        loaded,
    required TResult Function(String message) error,
    required TResult Function(Order order) loadedDetail,
  }) {
    return error(message);
  }

  @override
  @optionalTypeArgs
  TResult? whenOrNull<TResult extends Object?>({
    TResult? Function()? initial,
    TResult? Function()? loading,
    TResult? Function(List<Order> orders, int totalOrder, bool hasReachedMax,
            int currentPage, bool isLoadingMore)?
        loaded,
    TResult? Function(String message)? error,
    TResult? Function(Order order)? loadedDetail,
  }) {
    return error?.call(message);
  }

  @override
  @optionalTypeArgs
  TResult maybeWhen<TResult extends Object?>({
    TResult Function()? initial,
    TResult Function()? loading,
    TResult Function(List<Order> orders, int totalOrder, bool hasReachedMax,
            int currentPage, bool isLoadingMore)?
        loaded,
    TResult Function(String message)? error,
    TResult Function(Order order)? loadedDetail,
    required TResult orElse(),
  }) {
    if (error != null) {
      return error(message);
    }
    return orElse();
  }

  @override
  @optionalTypeArgs
  TResult map<TResult extends Object?>({
    required TResult Function(_Initial value) initial,
    required TResult Function(_Loading value) loading,
    required TResult Function(_Loaded value) loaded,
    required TResult Function(_Error value) error,
    required TResult Function(_LoadedDetail value) loadedDetail,
  }) {
    return error(this);
  }

  @override
  @optionalTypeArgs
  TResult? mapOrNull<TResult extends Object?>({
    TResult? Function(_Initial value)? initial,
    TResult? Function(_Loading value)? loading,
    TResult? Function(_Loaded value)? loaded,
    TResult? Function(_Error value)? error,
    TResult? Function(_LoadedDetail value)? loadedDetail,
  }) {
    return error?.call(this);
  }

  @override
  @optionalTypeArgs
  TResult maybeMap<TResult extends Object?>({
    TResult Function(_Initial value)? initial,
    TResult Function(_Loading value)? loading,
    TResult Function(_Loaded value)? loaded,
    TResult Function(_Error value)? error,
    TResult Function(_LoadedDetail value)? loadedDetail,
    required TResult orElse(),
  }) {
    if (error != null) {
      return error(this);
    }
    return orElse();
  }
}

abstract class _Error implements OrderLoaderState {
  const factory _Error(final String message) = _$ErrorImpl;

  String get message;

  /// Create a copy of OrderLoaderState
  /// with the given fields replaced by the non-null parameter values.
  @JsonKey(includeFromJson: false, includeToJson: false)
  _$$ErrorImplCopyWith<_$ErrorImpl> get copyWith =>
      throw _privateConstructorUsedError;
}

/// @nodoc
abstract class _$$LoadedDetailImplCopyWith<$Res> {
  factory _$$LoadedDetailImplCopyWith(
          _$LoadedDetailImpl value, $Res Function(_$LoadedDetailImpl) then) =
      __$$LoadedDetailImplCopyWithImpl<$Res>;
  @useResult
  $Res call({Order order});
}

/// @nodoc
class __$$LoadedDetailImplCopyWithImpl<$Res>
    extends _$OrderLoaderStateCopyWithImpl<$Res, _$LoadedDetailImpl>
    implements _$$LoadedDetailImplCopyWith<$Res> {
  __$$LoadedDetailImplCopyWithImpl(
      _$LoadedDetailImpl _value, $Res Function(_$LoadedDetailImpl) _then)
      : super(_value, _then);

  /// Create a copy of OrderLoaderState
  /// with the given fields replaced by the non-null parameter values.
  @pragma('vm:prefer-inline')
  @override
  $Res call({
    Object? order = null,
  }) {
    return _then(_$LoadedDetailImpl(
      null == order
          ? _value.order
          : order // ignore: cast_nullable_to_non_nullable
              as Order,
    ));
  }
}

/// @nodoc

class _$LoadedDetailImpl implements _LoadedDetail {
  const _$LoadedDetailImpl(this.order);

  @override
  final Order order;

  @override
  String toString() {
    return 'OrderLoaderState.loadedDetail(order: $order)';
  }

  @override
  bool operator ==(Object other) {
    return identical(this, other) ||
        (other.runtimeType == runtimeType &&
            other is _$LoadedDetailImpl &&
            (identical(other.order, order) || other.order == order));
  }

  @override
  int get hashCode => Object.hash(runtimeType, order);

  /// Create a copy of OrderLoaderState
  /// with the given fields replaced by the non-null parameter values.
  @JsonKey(includeFromJson: false, includeToJson: false)
  @override
  @pragma('vm:prefer-inline')
  _$$LoadedDetailImplCopyWith<_$LoadedDetailImpl> get copyWith =>
      __$$LoadedDetailImplCopyWithImpl<_$LoadedDetailImpl>(this, _$identity);

  @override
  @optionalTypeArgs
  TResult when<TResult extends Object?>({
    required TResult Function() initial,
    required TResult Function() loading,
    required TResult Function(List<Order> orders, int totalOrder,
            bool hasReachedMax, int currentPage, bool isLoadingMore)
        loaded,
    required TResult Function(String message) error,
    required TResult Function(Order order) loadedDetail,
  }) {
    return loadedDetail(order);
  }

  @override
  @optionalTypeArgs
  TResult? whenOrNull<TResult extends Object?>({
    TResult? Function()? initial,
    TResult? Function()? loading,
    TResult? Function(List<Order> orders, int totalOrder, bool hasReachedMax,
            int currentPage, bool isLoadingMore)?
        loaded,
    TResult? Function(String message)? error,
    TResult? Function(Order order)? loadedDetail,
  }) {
    return loadedDetail?.call(order);
  }

  @override
  @optionalTypeArgs
  TResult maybeWhen<TResult extends Object?>({
    TResult Function()? initial,
    TResult Function()? loading,
    TResult Function(List<Order> orders, int totalOrder, bool hasReachedMax,
            int currentPage, bool isLoadingMore)?
        loaded,
    TResult Function(String message)? error,
    TResult Function(Order order)? loadedDetail,
    required TResult orElse(),
  }) {
    if (loadedDetail != null) {
      return loadedDetail(order);
    }
    return orElse();
  }

  @override
  @optionalTypeArgs
  TResult map<TResult extends Object?>({
    required TResult Function(_Initial value) initial,
    required TResult Function(_Loading value) loading,
    required TResult Function(_Loaded value) loaded,
    required TResult Function(_Error value) error,
    required TResult Function(_LoadedDetail value) loadedDetail,
  }) {
    return loadedDetail(this);
  }

  @override
  @optionalTypeArgs
  TResult? mapOrNull<TResult extends Object?>({
    TResult? Function(_Initial value)? initial,
    TResult? Function(_Loading value)? loading,
    TResult? Function(_Loaded value)? loaded,
    TResult? Function(_Error value)? error,
    TResult? Function(_LoadedDetail value)? loadedDetail,
  }) {
    return loadedDetail?.call(this);
  }

  @override
  @optionalTypeArgs
  TResult maybeMap<TResult extends Object?>({
    TResult Function(_Initial value)? initial,
    TResult Function(_Loading value)? loading,
    TResult Function(_Loaded value)? loaded,
    TResult Function(_Error value)? error,
    TResult Function(_LoadedDetail value)? loadedDetail,
    required TResult orElse(),
  }) {
    if (loadedDetail != null) {
      return loadedDetail(this);
    }
    return orElse();
  }
}

abstract class _LoadedDetail implements OrderLoaderState {
  const factory _LoadedDetail(final Order order) = _$LoadedDetailImpl;

  Order get order;

  /// Create a copy of OrderLoaderState
  /// with the given fields replaced by the non-null parameter values.
  @JsonKey(includeFromJson: false, includeToJson: false)
  _$$LoadedDetailImplCopyWith<_$LoadedDetailImpl> get copyWith =>
      throw _privateConstructorUsedError;
}
