import 'package:flutter/material.dart';
import 'package:flutter_screenutil/flutter_screenutil.dart';
import 'package:get/get.dart';
import 'package:project_telephony/model/sms_content_model.dart';
import 'package:project_telephony/utils/user_tool.dart';
import 'package:provider/provider.dart';

import '../../base/base_style.dart';
import '../../constants/api.dart';
import '../../model/network/api_client.dart';
import '../../model/network/base_model.dart';
import '../../model/user_info_model.dart';
import '../../providers/user_provider.dart';
import '../../utils/toast/cloud_toast.dart';
import '../user/content_details_page.dart';
import '../widget/plone_back_button.dart';
import '../widget/plone_bottom.dart';

class ScaffoldThemeWidget extends StatefulWidget {
  final String title;
  final Widget child;
  final String bottom;
  final bool isBorder;
  final bool isOpacity;
  final VoidCallback onTap;
  final int wid;
  const ScaffoldThemeWidget({
    Key? key,
    required this.title,
    required this.child,
    required this.bottom,
    this.isBorder = true,
    this.isOpacity = true,
    required this.onTap,
    this.wid=162
  }) : super(key: key);

  @override
  _ScaffoldThemeWidgetState createState() => _ScaffoldThemeWidgetState();
}

class _ScaffoldThemeWidgetState extends State<ScaffoldThemeWidget> {

  // final userProvider = Provider.of<UserProvider>(Get.context!, listen: false);
  @override
  Widget build(BuildContext context) {
    return Scaffold(
      resizeToAvoidBottomInset: false,
      appBar: AppBar(
          elevation: 0,
          title: Text(
            widget.title,
            style: TextStyle(
                fontSize: BaseStyle.fontSize34,
                color: BaseStyle.color333333,
                fontWeight: FontWeight.bold),
          ),
          titleSpacing: widget.wid.w,
          leading: const CloudBackButton(isSpecial: true),
          backgroundColor: kForeGroundColor),
      backgroundColor: Colors.white,
      body: widget.child,
      bottomNavigationBar:
      PloneBottom(
        onTap: widget.onTap,
        border: widget.isBorder,
        opacity: widget.isOpacity ? 1 : 0.4,
        text: widget.bottom,
      ).paddingOnly(bottom: 30.w),
    );
  }
}
