import 'package:flutter/material.dart';
import 'package:flutter_bloc/flutter_bloc.dart';
import 'package:flutter_swipe/flutter_swipe.dart';

import 'package:random/config/menu.dart';
import 'package:random/cubit/bottom_nav_cubit.dart';
import 'package:random/ui/widgets/app_bar.dart';
import 'package:random/ui/widgets/bottom_nav_bar.dart';

class SkeletonScreen extends StatefulWidget {
  const SkeletonScreen({super.key});

  @override
  State<SkeletonScreen> createState() => _SkeletonScreenState();
}

class _SkeletonScreenState extends State<SkeletonScreen> {
  @override
  Widget build(BuildContext context) {
    return Scaffold(
      extendBodyBehindAppBar: false,
      appBar: StandardAppBar(),
      body: Swiper(
        itemCount: Menu.itemsCount,
        itemBuilder: (BuildContext context, int index) {
          return Menu.getPageWidget(index);
        },
        pagination: SwiperPagination(
          builder: SwiperCustomPagination(
            builder: (BuildContext context, SwiperPluginConfig config) {
              return BottomNavBar(swipeController: config.controller);
            },
          ),
        ),
        onIndexChanged: (newPageIndex) {
          BlocProvider.of<BottomNavCubit>(context).updateIndex(newPageIndex);
        },
        outer: true,
        loop: false,
      ),
      backgroundColor: Theme.of(context).colorScheme.background,
    );
  }
}