import 'package:flutter/material.dart';
import 'package:flutter_svg/svg.dart';

import '../core/constants/app_assets.dart';
import '../res/app_colors.dart';


class DashBoardAppBar extends StatelessWidget implements PreferredSizeWidget {
  final String? title;
  final Color titleColor;
  final Color backgroundColor;
  final VoidCallback onBackButtonPressed;
  final List<Widget>? actions;

  const DashBoardAppBar({
    Key? key,
    this.title = "",
    this.titleColor = Colors.white,
    this.backgroundColor = AppColors.colorPrimary,
    required this.onBackButtonPressed,
    this.actions,
  }) : super(key: key);

  @override
  Size get preferredSize => const Size.fromHeight(kToolbarHeight);

  @override
  Widget build(BuildContext context) {
    return AppBar(
      backgroundColor: backgroundColor,
      elevation: 0.0,
      leadingWidth: 100,
      leading: Container(
        margin: const EdgeInsets.all(10),
        decoration: BoxDecoration(
          borderRadius: BorderRadius.circular(50),
          color: Colors.transparent,
        ),
        child: InkWell(
          borderRadius: const BorderRadius.all(Radius.circular(50)),
          splashColor: Colors.transparent,
          onTap: onBackButtonPressed,
          child: Padding(
            padding: const EdgeInsets.all(7.0),
            child: Transform(
                alignment: Alignment.center,
                transform: Matrix4.rotationY(
                    Directionality.of(context) == TextDirection.rtl ? 280 : 0),
                child: SvgPicture.asset(
                  AppAssets.lg_back_arrow,
                  fit: BoxFit.cover,
                )),
          ),
        ),
      ),
      title: Text(
        title ?? "",
        style: Theme.of(context)
            .textTheme
            .displayMedium
            ?.copyWith(color: AppColors.white, fontSize: 20),
      ),
      actions: actions,
    );
    // return ColoredBox(
    //   color: backgroundColor,
    //   child: Stack(
    //     children: [
    //       Align(
    //         alignment: Directionality.of(context) == TextDirection.rtl
    //             ? Alignment.centerRight
    //             : Alignment.centerLeft,
    //         child: Container(
    //           margin: const EdgeInsets.all(10),
    //           decoration: BoxDecoration(
    //             borderRadius: BorderRadius.circular(50),
    //             color: Colors.transparent,
    //           ),
    //           width: 66.0,
    //           height: 32.0,
    //           child: Material(
    //             color: Colors.transparent,
    //             child: InkWell(
    //               borderRadius: const BorderRadius.all(Radius.circular(50)),
    //               splashColor: Colors.transparent,
    //               onTap: onBackButtonPressed,
    //               child: Padding(
    //                 padding: const EdgeInsets.all(7.0),
    //                 child: Transform(
    //                     alignment: Alignment.center,
    //                     transform: Matrix4.rotationY(
    //                         Directionality.of(context) == TextDirection.rtl ? 280 : 0),
    //                     child: SvgPicture.asset(
    //                       AppAssets.ic_back_arrow_appbar,
    //                       fit: BoxFit.cover,
    //                     )),
    //               ),
    //             ),
    //           ),
    //         ),
    //       ),
    //       Center(
    //         child: Text(
    //           title ?? "",
    //           style: Theme.of(context)
    //               .textTheme
    //               .displayMedium
    //               ?.copyWith(color: AppColors.white, fontSize: 20),
    //         ),
    //       ),
    //       Align(
    //         alignment: Directionality.of(context) == TextDirection.rtl
    //             ? Alignment.centerLeft
    //             : Alignment.centerRight, // Align to the right
    //         child: Center(
    //           child: Row(
    //             mainAxisAlignment: MainAxisAlignment.end,
    //             children: [...actions ?? []],
    //           ),
    //         ),
    //       ),
    //     ],
    //   ),
    // );
  }
}
