import 'package:hub/modals/details/schedule_visit_detail/widget.dart'; import 'package:hub/modals/details/view_visit_detail/widget.dart'; import '/commons/widgets/flutter_flow_util.dart'; import 'package:flutter/material.dart'; import 'model.dart'; export 'model.dart'; class VisitDetailsModalTemplateComponentWidget extends StatefulWidget { const VisitDetailsModalTemplateComponentWidget({ super.key, this.visitStatusStr, this.visitStartDateStr, this.visitEndDateStr, this.visitReasonStr, this.visitLevelStr, this.visitTempStr, this.visitObsStr, this.visitorStrList, this.visitorJsonList, this.visitorImgPath, this.visitorImgList, this.visitIdStr, this.updateToggleIdx, this.repeatVisitSchedule, this.visitStatusColor, }); final String? visitStatusStr; final String? visitStartDateStr; final String? visitEndDateStr; final String? visitReasonStr; final String? visitLevelStr; final String? visitTempStr; final String? visitObsStr; final String? visitorStrList; final List? visitorJsonList; final String? visitorImgPath; final List? visitorImgList; final String? visitIdStr; final Future Function()? updateToggleIdx; final Future Function()? repeatVisitSchedule; final Color? visitStatusColor; @override State createState() => _VisitDetailsModalTemplateComponentWidgetState(); } class _VisitDetailsModalTemplateComponentWidgetState extends State { late VisitDetailsModalTemplateComponentModel _model; @override void setState(VoidCallback callback) { super.setState(callback); _model.onUpdate(); } @override void initState() { super.initState(); _model = createModel(context, () => VisitDetailsModalTemplateComponentModel()); } @override void dispose() { _model.maybeDispose(); super.dispose(); } @override Widget build(BuildContext context) { return Align( alignment: const AlignmentDirectional(0.0, 1.0), child: Builder( builder: (context) { if (widget.visitStatusStr != null && widget.visitStatusStr != '') { return wrapWithModel( model: _model.viewVisitDetailModel, updateCallback: () => setState(() {}), updateOnChange: true, child: ViewVisitDetailWidget( visitorImgPath: widget.visitorImgPath, visitStartDate: widget.visitStartDateStr!, visitEndDate: widget.visitEndDateStr!, visitReasonStr: widget.visitReasonStr!, visitLevelStr: widget.visitLevelStr!, visitTempStr: widget.visitTempStr!, visitObsStr: widget.visitObsStr!, visitStatusStr: widget.visitStatusStr!, visitorStrList: widget.visitorStrList!, visitorJsonList: widget.visitorJsonList, visitIdStr: widget.visitIdStr!, visitStatusColor: widget.visitStatusColor!, ), ); } else { return wrapWithModel( model: _model.scheduleVisitDetailModel, updateCallback: () => setState(() {}), updateOnChange: true, child: ScheduleVisitDetailWidget( visitorStrList: widget.visitorStrList!, visitorImgPath: widget.visitorImgPath, visitStartDate: widget.visitStartDateStr!, visitEndDate: widget.visitEndDateStr!, visitResonStr: widget.visitReasonStr!, visitLevelStr: widget.visitLevelStr!, visitTempStr: widget.visitTempStr!, visitObsStr: widget.visitObsStr!, visitorJsonList: widget.visitorJsonList!, ), ); } }, ), ); } }