import 'package:flutter/material.dart'; import 'package:flutter_screenutil/flutter_screenutil.dart'; import 'package:yumi/app/constants/sc_screen.dart'; import 'package:yumi/ui_kit/widgets/room/cp/room_cp_invite_dialog.dart'; void main() { runApp(const RoomCpInvitePreviewApp()); } class RoomCpInvitePreviewApp extends StatelessWidget { const RoomCpInvitePreviewApp({super.key}); @override Widget build(BuildContext context) { return ScreenUtilInit( designSize: Size(SCScreen.designWidth, SCScreen.designHeight), splitScreenMode: false, minTextAdapt: true, builder: (context, child) { return const MaterialApp( debugShowCheckedModeBanner: false, home: RoomCpInvitePreviewPage(), ); }, ); } } class RoomCpInvitePreviewPage extends StatelessWidget { const RoomCpInvitePreviewPage({super.key}); static const _previewStyle = String.fromEnvironment( 'CP_PREVIEW_STYLE', defaultValue: 'waiting', ); static const _inviter = RoomCpInviteDialogUser(name: 'NameName'); static const _receiver = RoomCpInviteDialogUser(name: 'NameName'); @override Widget build(BuildContext context) { final style = _previewStyle == 'incoming' || Uri.base.queryParameters['style'] == 'incoming' ? RoomCpInviteDialogStyle.incoming : RoomCpInviteDialogStyle.waiting; return Scaffold( body: SizedBox.expand( child: DecoratedBox( decoration: const BoxDecoration( gradient: LinearGradient( begin: Alignment.topLeft, end: Alignment.bottomRight, colors: [Color(0xFF2C1620), Color(0xFF171C31), Color(0xFF07070B)], ), ), child: Stack( children: [ RoomCpInviteDialog( inviter: _inviter, receiver: _receiver, style: style, countdownSeconds: 86399, autoDismiss: false, ), ], ), ), ), ); } }