getPresentationWidgetsCustomBottomBarTemplate function

String getPresentationWidgetsCustomBottomBarTemplate(
  1. String projectName
)

Implementation

String getPresentationWidgetsCustomBottomBarTemplate(String projectName) {
  return '''
import 'package:flutter/material.dart';
import 'package:${projectName}/core/constants/app_assets.dart';
import 'package:${projectName}/presentation/widgets/common_svg_widget.dart';
import '../../core/theme/app_colors.dart';
import '../../core/utils/responsive_size.dart';

class CustomBottomNavBar extends StatelessWidget {
  final int currentIndex;
  final Function(int) onTap;

  const CustomBottomNavBar({
    super.key,
    required this.currentIndex,
    required this.onTap,
  });

  @override
  Widget build(BuildContext context) {
    return Container(
      height: 75.sp,
      padding: EdgeInsets.symmetric(horizontal: 10.sp, vertical: 5.sp),
      decoration: const BoxDecoration(
        color: Colors.white,
        border: Border(top: BorderSide(color: AppColors.themeBorder)),
      ),
      child: Row(
        mainAxisAlignment: MainAxisAlignment.spaceAround,
        children: [
          _item("", "", 0),
          _item("", "", 1),
          _item("", "", 2),
          _item("", "", 3),
          _item("", "", 4),
        ],
      ),
    );
  }

  Widget _item(String icon, String label, int index) {
    final bool selected = currentIndex == index;

    return InkWell(
      onTap: () => onTap(index),
      child: Column(
        mainAxisAlignment: MainAxisAlignment.center,
        children: [
          icon!=""? SvgWidget(
            assetName: icon??"",
            color: selected ? AppColors.primary : Colors.grey,
          ):Icon(Icons.question_mark,
            color: selected ? AppColors.primary : Colors.grey,
          ),
          SizedBox(height: 4.sp),
          Text(
            label,
            style: TextStyle(
              fontSize: 12.sp,
              color: selected ? AppColors.primary : Colors.grey,
            ),
          ),
        ],
      ),
    );
  }
}
''';
}