import 'package:flutter/material.dart';
import 'package:syncrow_web/pages/access_management/manage_bookable_spaces/domain/models/bookable_space_model.dart';
import 'package:syncrow_web/pages/access_management/manage_bookable_spaces/domain/models/bookable_space_config.dart';
import 'package:syncrow_web/pages/access_management/manage_bookable_spaces/domain/params/non_bookable_spaces_params.dart';
import 'package:syncrow_web/pages/access_management/manage_bookable_spaces/domain/service/non_bookable_spaces_service.dart';
import 'package:syncrow_web/pages/access_management/manage_bookable_spaces/domain/service/send_bookable_spaces_to_api_params.dart';
import 'package:syncrow_web/pages/space_management_v2/main_module/shared/models/paginated_data_model.dart';

class DummyNonNookableSpaces implements NonBookableSpacesService {
  @override
  Future<PaginatedDataModel<BookableSpacemodel>> load(
      NonBookableSpacesParams params) {
    return Future.value(PaginatedDataModel<BookableSpacemodel>(
      data: [
        BookableSpacemodel(
          spaceName: 'space3',
          spaceConfig: BookableSpaceConfig(
            configUuid: 'uuid',
            bookableDays: ['wed', 'saturday'],
            availability: true,
            bookingEndTime: const TimeOfDay(hour: 13, minute: 20),
            bookingStartTime: const TimeOfDay(hour: 6, minute: 20),
            cost: 6,
          ),
          spaceUuid: 'uuiiddd',
          spaceVirtualAddress: 'idvirtual1',
        ),
        BookableSpacemodel(
          spaceName: 'space3',
          spaceConfig: BookableSpaceConfig(
            configUuid: 'uuid',
            bookableDays: ['wed', 'saturday', 'thuresday'],
            availability: true,
            bookingEndTime: const TimeOfDay(hour: 13, minute: 20),
            bookingStartTime: const TimeOfDay(hour: 5, minute: 20),
            cost: 5,
          ),
          spaceUuid: 'uuiiddd',
          spaceVirtualAddress: 'idvirtual2',
        ),
        BookableSpacemodel(
          spaceName: 'space3',
          spaceConfig: BookableSpaceConfig(
            configUuid: 'uuid',
            bookableDays: [
              'saturday',
              'sunday',
              'Monday',
              'tuesday',
              'wed',
              'thuresday'
            ],
            availability: true,
            bookingEndTime: const TimeOfDay(hour: 13, minute: 20),
            bookingStartTime: const TimeOfDay(hour: 15, minute: 20),
            cost: 2,
          ),
          spaceUuid: 'uuiiddd',
          spaceVirtualAddress: 'idvirtual3',
        )
      ],
      page: 1,
      size: 1,
      hasNext: false,
      totalPages: 0,
      totalItems: 0,
    ));
  }

  @override
  Future<void> sendBookableSpacesToApi(
      SendBookableSpacesToApiParams params) async {}
}
