moda 0.0.6 copy "moda: ^0.0.6" to clipboard
moda: ^0.0.6 copied to clipboard

Bulletin modal sheet route

example/lib/main.dart

import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
import 'package:moda/moda.dart';

void main() {
  runApp(const ModaExampleApp());
}

class ModaExampleApp extends StatelessWidget {
  const ModaExampleApp({super.key});

  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Moda Example',
      theme: ThemeData(
        useMaterial3: true,
        colorScheme: ColorScheme.fromSeed(
          seedColor: Colors.grey,
          brightness: MediaQuery.of(context).platformBrightness,
        ),
      ),
      home: HomePage(),
    );
  }
}

class HomePage extends StatelessWidget {
  const HomePage({
    super.key,
  });

  @override
  Widget build(BuildContext context) {
    return CupertinoPageScaffold(
      navigationBar: const CupertinoNavigationBar(
        middle: Text('Moda Example'),
      ),
      child: Center(
        child: CupertinoButton.filled(
          child: Text('Show bulletin'),
          onPressed: () async {
            await showBulletin(
              context: context,
              builder: (context) => AirPodsProChargingDummy(),
            );
          },
        ),
      ),
    );
  }
}

class KeyObtainedDummy extends StatelessWidget {
  const KeyObtainedDummy({super.key});

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      body: Padding(
        padding: const EdgeInsets.all(30),
        child: Column(
          mainAxisAlignment: MainAxisAlignment.center,
          crossAxisAlignment: CrossAxisAlignment.stretch,
          children: [
            CircleAvatar(
              child: Text('J'),
              radius: 30,
            ),
            SizedBox(height: 25),
            Text(
              '@JohnAppleseed\nsent you a friend request',
              style: CupertinoTheme.of(context).textTheme.navTitleTextStyle,
              textAlign: TextAlign.center,
            ),
            SizedBox(height: 15),
            Opacity(
              opacity: 0.5,
              child: Text(
                'Do you want to accept it?',
                style: CupertinoTheme.of(context).textTheme.textStyle,
                textAlign: TextAlign.center,
              ),
            ),
          ],
        ),
      ),
    );
  }
}

class AirPodsProChargingDummy extends StatelessWidget {
  const AirPodsProChargingDummy({
    super.key,
  });

  @override
  Widget build(BuildContext context) {
    return Navigator(
      onGenerateRoute: (settings) {
        return CupertinoPageRoute(
          builder: (context) {
            return Scaffold(
              body: Container(
                padding:
                    const EdgeInsets.symmetric(vertical: 50, horizontal: 30),
                child: Column(
                  crossAxisAlignment: CrossAxisAlignment.stretch,
                  children: [
                    Text(
                      'AirPods Pro',
                      style: CupertinoTheme.of(context)
                          .textTheme
                          .navLargeTitleTextStyle
                          .copyWith(letterSpacing: -1),
                      textAlign: TextAlign.center,
                    ),
                    Expanded(
                        child:
                            Image.asset('assets/airpods_pro_placeholder.jpeg')),
                    CupertinoButton(
                        child: Text('Continue'),
                        onPressed: () {
                          Navigator.of(context).push(CupertinoPageRoute(
                              builder: (context) => KeyObtainedDummy()));
                        }),
                  ],
                ),
              ),
            );
          },
        );
      },
    );
  }
}
3
likes
0
pub points
0%
popularity

Publisher

unverified uploader

Bulletin modal sheet route

Repository (GitHub)
View/report issues

License

unknown (license)

Dependencies

flutter, screen_corners, smooth_corner

More

Packages that depend on moda