optionsBottomSheet method

Widget optionsBottomSheet()

Implementation

Widget optionsBottomSheet() {
  return Obx(() {
    final list = [
      UpgradeOption.membership,
      UpgradeOption.addOns,
      UpgradeOption.betaMember,
    ];
    return Column(
      crossAxisAlignment: CrossAxisAlignment.start,
      children: [
        Align(
          alignment: Alignment.topRight,
          child: InkWell(
            onTap: () {
              closeDialog();
            },
            child: Container(
              width: 24.dp,
              height: 24.dp,
              alignment: Alignment.center,
              child: SvgPicture.asset(
                'assets/myflights/ic_close.svg',
                width: 20.dp,
                height: 20.dp,
                colorFilter: const ColorFilter.mode(
                  ColorHelper.neutralDark,
                  BlendMode.srcIn,
                ),
              ),
            ),
          ),
        ),
        12.SpaceX,
        ...List.generate(list.length, (i) {
          return Column(
            crossAxisAlignment: CrossAxisAlignment.start,
            children: [
              InkWell(
                onTap: () {
                  controller.selectedUpgradeOption.value = list[i];
                  closeDialog();
                  if (list[i] == UpgradeOption.addOns &&
                      controller.showBusiness.value) {
                    controller.loadCorporateAddons();
                  }
                  if (list[i] == UpgradeOption.betaMember) {
                    controller.loadBetaOffers();
                  }
                },
                child: Text(
                  SubscriptionUtils.mapUpgradeOptionToName(list[i]),
                  style: TextStyle(
                    fontSize: 16,
                    fontWeight: FontWeight.w400,
                    color: controller.selectedUpgradeOption.value == list[i]
                        ? ColorHelper.primaryColor2
                        : ColorHelper.neutralDark,
                    height: 1.5,
                  ),
                ),
              ),
              if (i != list.length - 1) _divider2(),
            ],
          );
        }),
        62.SpaceX
      ],
    );
  });
}