Widget build()

in in_app_purchases/step_10/app/lib/pages/purchase_page.dart [16:53]


  Widget build(BuildContext context) {
    var firebaseNotifier = context.watch<FirebaseNotifier>();
    if (firebaseNotifier.state == FirebaseState.loading) {
      return _PurchasesLoading();
    } else if (firebaseNotifier.state == FirebaseState.notAvailable) {
      return _PurchasesNotAvailable();
    }

    if (!firebaseNotifier.loggedIn) {
      return const LoginPage();
    }

    var upgrades = context.watch<DashPurchases>();

    Widget storeWidget;
    switch (upgrades.storeState) {
      case StoreState.loading:
        storeWidget = _PurchasesLoading();
        break;
      case StoreState.available:
        storeWidget = _PurchaseList();
        break;
      case StoreState.notAvailable:
        storeWidget = _PurchasesNotAvailable();
        break;
    }
    return Column(crossAxisAlignment: CrossAxisAlignment.start, children: [
      storeWidget,
      const Padding(
        padding: EdgeInsets.fromLTRB(32.0, 32.0, 32.0, 0.0),
        child: Text(
          'Past purchases',
          style: TextStyle(fontWeight: FontWeight.bold),
        ),
      ),
      const PastPurchasesWidget(),
    ]);
  }