import '/flutter_flow/flutter_flow_theme.dart'; import '/flutter_flow/flutter_flow_util.dart'; import '/custom_code/widgets/index.dart' as custom_widgets; import 'package:flutter/material.dart'; import 'image_cropper_model.dart'; export 'image_cropper_model.dart'; class ImageCropperWidget extends StatefulWidget { const ImageCropperWidget({ super.key, required this.uploadImageFile, }); final FFUploadedFile? uploadImageFile; @override State createState() => _ImageCropperWidgetState(); } class _ImageCropperWidgetState extends State { late ImageCropperModel _model; @override void setState(VoidCallback callback) { super.setState(callback); _model.onUpdate(); } @override void initState() { super.initState(); _model = createModel(context, () => ImageCropperModel()); } @override void dispose() { _model.maybeDispose(); super.dispose(); } @override Widget build(BuildContext context) { return Container( width: 500.0, height: 500.0, decoration: BoxDecoration( color: FlutterFlowTheme.of(context).secondaryBackground, ), child: SizedBox( width: double.infinity, height: double.infinity, child: custom_widgets.ImageCropper( width: double.infinity, height: double.infinity, imageFile: widget.uploadImageFile, callBackAction: (url) async { Navigator.pop(context, url); }, ), ), ); } }