import '/backend/api_requests/api_calls.dart'; import '/components/appbar_widget.dart'; import '/components/emptylist_widget.dart'; import '/components/nav_bar1_widget.dart'; import '/flutterlib/flutter_drop_down.dart'; import '/flutterlib/flutter_theme.dart'; import '/flutterlib/flutter_util.dart'; import '/flutterlib/flutter_widgets.dart'; import '/flutterlib/form_field_controller.dart'; import '/flutterlib/custom_functions.dart' as functions; import 'package:easy_debounce/easy_debounce.dart'; import 'package:flutter/material.dart'; import 'package:flutter/services.dart'; import 'package:flutter_svg/flutter_svg.dart'; import 'package:google_fonts/google_fonts.dart'; import 'package:provider/provider.dart'; import 'search1_model.dart'; export 'search1_model.dart'; class Search1Widget extends StatefulWidget { const Search1Widget({ Key? key, required this.search, required this.status, required this.category, required this.fixDate, required this.dateFrom, required this.dateTo, }) : super(key: key); final String? search; final String? status; final String? category; final String? fixDate; final String? dateFrom; final String? dateTo; @override _Search1WidgetState createState() => _Search1WidgetState(); } class _Search1WidgetState extends State { late Search1Model _model; final scaffoldKey = GlobalKey(); @override void initState() { super.initState(); _model = createModel(context, () => Search1Model()); _model.textController ??= TextEditingController(); _model.textFieldFocusNode ??= FocusNode(); } @override void dispose() { _model.dispose(); super.dispose(); } @override Widget build(BuildContext context) { if (isiOS) { SystemChrome.setSystemUIOverlayStyle( SystemUiOverlayStyle( statusBarBrightness: Theme.of(context).brightness, systemStatusBarContrastEnforced: true, ), ); } context.watch(); return GestureDetector( onTap: () => _model.unfocusNode.canRequestFocus ? FocusScope.of(context).requestFocus(_model.unfocusNode) : FocusScope.of(context).unfocus(), child: Scaffold( key: scaffoldKey, backgroundColor: Color(0xFFEBEBE4), drawer: Container( width: 180.0, child: Drawer( elevation: 16.0, child: Container( width: 100.0, height: 100.0, decoration: BoxDecoration( color: Color(0xFF009B9A), ), child: Column( mainAxisSize: MainAxisSize.max, children: [ Padding( padding: EdgeInsetsDirectional.fromSTEB(0.0, 80.0, 0.0, 0.0), child: Row( mainAxisSize: MainAxisSize.max, children: [ Container( width: 180.0, height: 61.0, decoration: BoxDecoration( color: Color(0xFF009B9A), ), child: InkWell( splashColor: Colors.transparent, focusColor: Colors.transparent, hoverColor: Colors.transparent, highlightColor: Colors.transparent, onTap: () async { context.pushNamed('account'); }, child: Row( mainAxisSize: MainAxisSize.max, mainAxisAlignment: MainAxisAlignment.start, children: [ Padding( padding: EdgeInsetsDirectional.fromSTEB( 15.0, 8.0, 0.0, 0.0), child: Container( width: 40.0, height: 40.0, decoration: BoxDecoration( color: FlutterTheme.of(context) .secondaryBackground, shape: BoxShape.circle, ), child: Align( alignment: AlignmentDirectional(0.0, 0.0), child: ClipRRect( borderRadius: BorderRadius.circular(8.0), child: SvgPicture.asset( 'assets/images/company.svg', width: 30.0, height: 30.0, fit: BoxFit.contain, ), ), ), ), ), Padding( padding: EdgeInsetsDirectional.fromSTEB( 8.0, 8.0, 0.0, 0.0), child: Text( FFLocalizations.of(context).getText( 'o0s247dg' /* ABC Ltd */, ), style: FlutterTheme.of(context) .bodyMedium .override( fontFamily: 'Readex Pro', color: Colors.white, fontSize: 16.0, ), ), ), ], ), ), ), ], ), ), Container( width: 180.0, height: 61.0, decoration: BoxDecoration( color: Color(0xFF009B9A), ), child: InkWell( splashColor: Colors.transparent, focusColor: Colors.transparent, hoverColor: Colors.transparent, highlightColor: Colors.transparent, onTap: () async { context.pushNamed('account1'); }, child: Row( mainAxisSize: MainAxisSize.max, mainAxisAlignment: MainAxisAlignment.start, children: [ ClipRRect( borderRadius: BorderRadius.circular(8.0), child: SvgPicture.asset( 'assets/images/Group_2640.svg', width: 0.0, height: 0.0, fit: BoxFit.contain, ), ), Align( alignment: AlignmentDirectional(0.0, 0.0), child: Padding( padding: EdgeInsetsDirectional.fromSTEB( 5.0, 0.0, 0.0, 0.0), child: ClipRRect( borderRadius: BorderRadius.circular(8.0), child: Image.asset( 'assets/images/account.png', width: 50.0, height: 50.0, fit: BoxFit.cover, ), ), ), ), Padding( padding: EdgeInsetsDirectional.fromSTEB( 8.0, 0.0, 0.0, 0.0), child: Text( FFLocalizations.of(context).getText( 'ohz2r9h0' /* Account */, ), style: FlutterTheme.of(context) .bodyMedium .override( fontFamily: 'Readex Pro', color: Colors.white, fontSize: 16.0, ), ), ), ], ), ), ), Container( width: 180.0, height: 61.0, decoration: BoxDecoration( color: Color(0xFF009B9A), ), child: InkWell( splashColor: Colors.transparent, focusColor: Colors.transparent, hoverColor: Colors.transparent, highlightColor: Colors.transparent, onTap: () async { context.pushNamed('tnc'); }, child: Row( mainAxisSize: MainAxisSize.max, mainAxisAlignment: MainAxisAlignment.start, children: [ ClipRRect( borderRadius: BorderRadius.circular(8.0), child: SvgPicture.asset( 'assets/images/document.svg', width: 0.0, height: 0.0, fit: BoxFit.contain, ), ), Align( alignment: AlignmentDirectional(0.0, 0.0), child: Padding( padding: EdgeInsetsDirectional.fromSTEB( 16.0, 0.0, 0.0, 0.0), child: ClipRRect( borderRadius: BorderRadius.circular(8.0), child: SvgPicture.asset( 'assets/images/tnc.svg', width: 30.0, height: 30.0, fit: BoxFit.cover, ), ), ), ), Padding( padding: EdgeInsetsDirectional.fromSTEB( 17.0, 0.0, 0.0, 0.0), child: Text( FFLocalizations.of(context).getText( '2j9d4im6' /* T&C */, ), style: FlutterTheme.of(context) .bodyMedium .override( fontFamily: 'Readex Pro', color: Colors.white, fontSize: 16.0, ), ), ), ClipRRect( borderRadius: BorderRadius.circular(8.0), child: SvgPicture.asset( 'assets/images/Group_2640.svg', width: 0.0, height: 0.0, fit: BoxFit.fitHeight, ), ), ], ), ), ), Container( width: 180.0, height: 61.0, decoration: BoxDecoration( color: Color(0xFF009B9A), ), child: InkWell( splashColor: Colors.transparent, focusColor: Colors.transparent, hoverColor: Colors.transparent, highlightColor: Colors.transparent, onTap: () async { context.pushNamed('policy'); }, child: Row( mainAxisSize: MainAxisSize.max, mainAxisAlignment: MainAxisAlignment.start, children: [ ClipRRect( borderRadius: BorderRadius.circular(8.0), child: SvgPicture.asset( 'assets/images/Group_2640.svg', width: 0.0, height: 0.0, fit: BoxFit.contain, ), ), Align( alignment: AlignmentDirectional(0.0, 0.0), child: Padding( padding: EdgeInsetsDirectional.fromSTEB( 16.0, 0.0, 0.0, 0.0), child: ClipRRect( borderRadius: BorderRadius.circular(8.0), child: SvgPicture.asset( 'assets/images/pp.svg', width: 30.0, height: 30.0, fit: BoxFit.cover, ), ), ), ), Padding( padding: EdgeInsetsDirectional.fromSTEB( 16.0, 0.0, 0.0, 0.0), child: Text( FFLocalizations.of(context).getText( 'e6ffa2mq' /* Privacy Policy */ , ), style: FlutterTheme.of(context) .bodyMedium .override( fontFamily: 'Readex Pro', color: Colors.white, fontSize: 16.0, ), ), ), ], ), ), ), Container( width: 180.0, height: 61.0, decoration: BoxDecoration( color: Color(0xFF009B9A), ), child: InkWell( splashColor: Colors.transparent, focusColor: Colors.transparent, hoverColor: Colors.transparent, highlightColor: Colors.transparent, onTap: () async { context.pushNamed('language'); }, child: Row( mainAxisSize: MainAxisSize.max, mainAxisAlignment: MainAxisAlignment.start, children: [ ClipRRect( borderRadius: BorderRadius.circular(8.0), child: SvgPicture.asset( 'assets/images/Group_2640.svg', width: 0.0, height: 0.0, fit: BoxFit.contain, ), ), Align( alignment: AlignmentDirectional(0.0, 0.0), child: Padding( padding: EdgeInsetsDirectional.fromSTEB( 16.0, 0.0, 0.0, 0.0), child: ClipRRect( borderRadius: BorderRadius.circular(8.0), child: SvgPicture.asset( 'assets/images/language.svg', width: 30.0, height: 30.0, fit: BoxFit.contain, ), ), ), ), Padding( padding: EdgeInsetsDirectional.fromSTEB( 15.0, 0.0, 0.0, 0.0), child: Text( FFLocalizations.of(context).getText( 'fc9wkvty' /* Languages */, ), style: FlutterTheme.of(context) .bodyMedium .override( fontFamily: 'Readex Pro', color: Colors.white, fontSize: 16.0, ), ), ), ], ), ), ), Container( width: 180.0, height: 61.0, decoration: BoxDecoration( color: Color(0xFF009B9A), ), child: InkWell( splashColor: Colors.transparent, focusColor: Colors.transparent, hoverColor: Colors.transparent, highlightColor: Colors.transparent, onTap: () async { context.pushNamed('setting'); }, child: Row( mainAxisSize: MainAxisSize.max, mainAxisAlignment: MainAxisAlignment.start, children: [ ClipRRect( borderRadius: BorderRadius.circular(8.0), child: SvgPicture.asset( 'assets/images/Group_2640.svg', width: 0.0, height: 0.0, fit: BoxFit.contain, ), ), Align( alignment: AlignmentDirectional(0.0, 0.0), child: Padding( padding: EdgeInsetsDirectional.fromSTEB( 16.0, 0.0, 0.0, 0.0), child: ClipRRect( borderRadius: BorderRadius.circular(8.0), child: SvgPicture.asset( 'assets/images/setting-2.svg', width: 30.0, height: 30.0, fit: BoxFit.contain, ), ), ), ), Padding( padding: EdgeInsetsDirectional.fromSTEB( 15.0, 0.0, 0.0, 0.0), child: Text( FFLocalizations.of(context).getText( 'kii6flq4' /* Settings */, ), style: FlutterTheme.of(context) .bodyMedium .override( fontFamily: 'Readex Pro', color: Colors.white, fontSize: 16.0, ), ), ), ], ), ), ), ], ), ), ), ), appBar: PreferredSize( preferredSize: Size.fromHeight(0.0), child: AppBar( backgroundColor: Color(0xFFE7E36B), automaticallyImplyLeading: false, actions: [], centerTitle: false, elevation: 0.0, ), ), body: SafeArea( top: true, child: Stack( children: [ Padding( padding: EdgeInsetsDirectional.fromSTEB(0.0, 100.0, 0.0, 100.0), child: Column( mainAxisSize: MainAxisSize.max, children: [ Padding( padding: EdgeInsetsDirectional.fromSTEB(0.0, 16.0, 0.0, 0.0), child: SingleChildScrollView( child: Column( mainAxisSize: MainAxisSize.max, mainAxisAlignment: MainAxisAlignment.start, children: [ Padding( padding: EdgeInsetsDirectional.fromSTEB( 0.0, 16.0, 16.0, 0.0), child: Row( mainAxisSize: MainAxisSize.max, mainAxisAlignment: MainAxisAlignment.end, children: [ Expanded( child: Align( alignment: AlignmentDirectional(-1.0, 0.0), child: Padding( padding: EdgeInsetsDirectional.fromSTEB( 16.0, 0.0, 0.0, 0.0), child: InkWell( splashColor: Colors.transparent, focusColor: Colors.transparent, hoverColor: Colors.transparent, highlightColor: Colors.transparent, onTap: () async { context.pushNamed('bk4'); }, child: Container( width: 40.0, height: 40.0, decoration: BoxDecoration( color: Color(0xFFD6DEE9), shape: BoxShape.circle, ), child: Column( mainAxisSize: MainAxisSize.max, mainAxisAlignment: MainAxisAlignment.center, crossAxisAlignment: CrossAxisAlignment.center, children: [ Expanded( child: Align( alignment: AlignmentDirectional( 0.0, 0.0), child: Padding( padding: EdgeInsetsDirectional .fromSTEB( 10.0, 0.0, 0.0, 0.0), child: Icon( Icons.arrow_back_ios, color: FlutterTheme.of( context) .secondaryText, size: 24.0, ), ), ), ), ], ), ), ), ), ), ), ], ), ), Align( alignment: AlignmentDirectional(0.0, 0.0), child: Padding( padding: EdgeInsetsDirectional.fromSTEB( 0.0, 8.0, 0.0, 8.0), child: Text( FFLocalizations.of(context).getText( 'mefbbqi6' /* Document/Record Search */, ), style: FlutterTheme.of(context) .bodyMedium .override( fontFamily: 'Readex Pro', color: Color(0xFF364257), fontSize: 24.0, ), ), ), ), ], ), ), ), Padding( padding: EdgeInsetsDirectional.fromSTEB(12.0, 8.0, 12.0, 8.0), child: Container( width: 350.0, height: 60.0, decoration: BoxDecoration( color: Colors.white, borderRadius: BorderRadius.circular(50.0), border: Border.all( color: Color(0xFF6D7581), ), ), child: Padding( padding: EdgeInsetsDirectional.fromSTEB( 8.0, 0.0, 8.0, 0.0), child: Row( mainAxisSize: MainAxisSize.max, children: [ Padding( padding: EdgeInsetsDirectional.fromSTEB( 10.0, 0.0, 0.0, 0.0), child: InkWell( splashColor: Colors.transparent, focusColor: Colors.transparent, hoverColor: Colors.transparent, highlightColor: Colors.transparent, onTap: () async { context.pushNamed('search_page'); }, child: ClipRRect( borderRadius: BorderRadius.circular(8.0), child: SvgPicture.asset( 'assets/images/setting-4.svg', width: 34.0, height: 34.0, fit: BoxFit.none, ), ), ), ), Expanded( child: Padding( padding: EdgeInsetsDirectional.fromSTEB( 10.0, 0.0, 0.0, 0.0), child: TextFormField( controller: _model.textController, focusNode: _model.textFieldFocusNode, onChanged: (_) => EasyDebounce.debounce( '_model.textController', Duration(milliseconds: 2000), () => setState(() {}), ), obscureText: false, decoration: InputDecoration( enabledBorder: UnderlineInputBorder( borderSide: BorderSide( color: Color(0x00000000), width: 1.0, ), borderRadius: const BorderRadius.only( topLeft: Radius.circular(4.0), topRight: Radius.circular(4.0), ), ), focusedBorder: UnderlineInputBorder( borderSide: BorderSide( color: Color(0x00000000), width: 1.0, ), borderRadius: const BorderRadius.only( topLeft: Radius.circular(4.0), topRight: Radius.circular(4.0), ), ), errorBorder: UnderlineInputBorder( borderSide: BorderSide( color: Color(0x00000000), width: 1.0, ), borderRadius: const BorderRadius.only( topLeft: Radius.circular(4.0), topRight: Radius.circular(4.0), ), ), focusedErrorBorder: UnderlineInputBorder( borderSide: BorderSide( color: Color(0x00000000), width: 1.0, ), borderRadius: const BorderRadius.only( topLeft: Radius.circular(4.0), topRight: Radius.circular(4.0), ), ), ), style: FlutterTheme.of(context) .bodyMedium .override( fontFamily: 'Open Sans', color: Color(0xFF364257), fontSize: 16.0, fontWeight: FontWeight.normal, ), validator: _model.textControllerValidator .asValidator(context), ), ), ), Padding( padding: EdgeInsetsDirectional.fromSTEB( 4.0, 0.0, 4.0, 0.0), child: Icon( Icons.search_rounded, color: Color(0xFF009B9A), size: 34.0, ), ), ], ), ), ), ), Expanded( child: Container( width: 358.0, height: 906.0, decoration: BoxDecoration( color: FlutterTheme.of(context).secondaryBackground, ), child: SingleChildScrollView( child: Column( mainAxisSize: MainAxisSize.max, children: [ Row( mainAxisSize: MainAxisSize.max, children: [ FlutterDropDown( controller: _model.dropDownValueController ??= FormFieldController(null), options: [ FFLocalizations.of(context).getText( 'i0j8hq18' /* Page 1 */, ), FFLocalizations.of(context).getText( 'fqzocdze' /* Page 2 */, ), FFLocalizations.of(context).getText( 'xhooyj5v' /* Page 3 */, ), FFLocalizations.of(context).getText( 'siyl3fjc' /* Psge 4 */, ) ], onChanged: (val) => setState( () => _model.dropDownValue = val), width: 142.0, height: 40.0, textStyle: FlutterTheme.of(context) .bodyMedium .override( fontFamily: 'Readex Pro', fontSize: 16.0, ), hintText: FFLocalizations.of(context).getText( 'd81vigdp' /* Page 1 */, ), icon: Icon( Icons.keyboard_arrow_down_rounded, color: FlutterTheme.of(context) .secondaryText, size: 24.0, ), fillColor: FlutterTheme.of(context) .secondaryBackground, elevation: 2.0, borderColor: Colors.transparent, borderWidth: 2.0, borderRadius: 8.0, margin: EdgeInsetsDirectional.fromSTEB( 16.0, 4.0, 16.0, 4.0), hidesUnderline: true, isSearchable: false, isMultiSelect: false, ), Expanded( child: Padding( padding: EdgeInsetsDirectional.fromSTEB( 70.0, 0.0, 9.0, 0.0), child: Theme( data: ThemeData( checkboxTheme: CheckboxThemeData( visualDensity: VisualDensity.compact, materialTapTargetSize: MaterialTapTargetSize .shrinkWrap, ), unselectedWidgetColor: FlutterTheme.of(context) .secondaryText, ), child: CheckboxListTile( value: _model .checkboxListTileValue ??= true, onChanged: (newValue) async { setState(() => _model.checkboxListTileValue = newValue!); }, title: Text( FFLocalizations.of(context).getText( 'bcdc4yj1' /* Select All */, ), style: FlutterTheme.of(context) .titleLarge .override( fontFamily: 'Outfit', color: Color(0xFF009B9A), fontSize: 16.0, ), ), tileColor: Color(0xFF009B9A), activeColor: Color(0xFF009B9A), checkColor: FlutterTheme.of(context).info, dense: false, controlAffinity: ListTileControlAffinity.trailing, ), ), ), ), ], ), FutureBuilder( future: NumstationGroup .documentLibrarySearchCall .call( s: widget.search, token: FFAppState().token, status: widget.status, categoryId: widget.category, fixDate: widget.fixDate, dateFrom: widget.dateFrom, dateTo: widget.dateTo, ), builder: (context, snapshot) { // Customize what your widget looks like when it's loading. if (!snapshot.hasData) { return Center( child: SizedBox( width: 50.0, height: 50.0, child: CircularProgressIndicator( valueColor: AlwaysStoppedAnimation( FlutterTheme.of(context).info, ), ), ), ); } final columnDocumentLibrarySearchResponse = snapshot.data!; return Builder( builder: (context) { final docList = getJsonField( columnDocumentLibrarySearchResponse .jsonBody, r'''$.documents..data''', ).toList(); if (docList.isEmpty) { return EmptylistWidget(); } return Column( mainAxisSize: MainAxisSize.max, children: List.generate(docList.length, (docListIndex) { final docListItem = docList[docListIndex]; return Padding( padding: EdgeInsetsDirectional.fromSTEB( 0.0, 10.0, 0.0, 10.0), child: Container( width: 328.0, height: 144.0, decoration: BoxDecoration( color: FlutterTheme.of(context) .secondaryBackground, boxShadow: [ BoxShadow( blurRadius: 4.0, color: Color(0x33000000), offset: Offset(0.0, 2.0), ) ], borderRadius: BorderRadius.circular(8.0), ), child: Align( alignment: AlignmentDirectional( 0.0, 0.0), child: Column( mainAxisSize: MainAxisSize.max, mainAxisAlignment: MainAxisAlignment.start, children: [ Padding( padding: EdgeInsetsDirectional .fromSTEB( 8.0, 8.0, 0.0, 0.0), child: Row( mainAxisSize: MainAxisSize.max, children: [ ClipRRect( borderRadius: BorderRadius .circular( 8.0), child: SvgPicture .asset( 'assets/images/Menu.svg', width: 24.0, height: 24.0, fit: BoxFit .contain, ), ), Expanded( child: Align( alignment: AlignmentDirectional( 1.0, 0.0), child: Padding( padding: EdgeInsetsDirectional .fromSTEB( 0.0, 0.0, 10.0, 0.0), child: Theme( data: ThemeData( checkboxTheme: CheckboxThemeData( visualDensity: VisualDensity .compact, materialTapTargetSize: MaterialTapTargetSize .shrinkWrap, shape: RoundedRectangleBorder( borderRadius: BorderRadius.circular(4.0), ), ), unselectedWidgetColor: Color( 0xFF009B9A), ), child: Checkbox( value: _model .checkboxValueMap[ docListItem] ??= true, onChanged: (newValue) async { setState(() => _model.checkboxValueMap[docListItem] = newValue!); }, activeColor: Color( 0xFF009B9A), checkColor: Colors .white, ), ), ), ), ), ], ), ), Padding( padding: EdgeInsetsDirectional .fromSTEB( 8.0, 14.0, 0.0, 0.0), child: Row( mainAxisSize: MainAxisSize.max, children: [ ClipRRect( borderRadius: BorderRadius .circular( 8.0), child: SvgPicture .asset( 'assets/images/XMLID_2001_.svg', width: 45.0, height: 58.0, fit: BoxFit.none, ), ), Expanded( child: Row( mainAxisSize: MainAxisSize .max, children: [ Column( mainAxisSize: MainAxisSize .max, crossAxisAlignment: CrossAxisAlignment .start, children: [ Row( mainAxisSize: MainAxisSize .max, children: [ Padding( padding: EdgeInsetsDirectional.fromSTEB( 0.0, 0.0, 100.0, 0.0), child: Wrap( spacing: 0.0, runSpacing: 0.0, alignment: WrapAlignment.start, crossAxisAlignment: WrapCrossAlignment.start, direction: Axis.horizontal, runAlignment: WrapAlignment.start, verticalDirection: VerticalDirection.down, clipBehavior: Clip.none, children: [ Padding( padding: EdgeInsetsDirectional.fromSTEB(10.0, 0.0, 0.0, 5.0), child: Text( getJsonField( docListItem, r'''$.name''', ).toString(), style: FlutterTheme.of(context).bodyMedium.override( fontFamily: 'Readex Pro', fontSize: 16.0, ), ), ), ], ), ), ], ), Align( alignment: AlignmentDirectional( -1.0, 0.0), child: Row( mainAxisSize: MainAxisSize.max, children: [ Align( alignment: AlignmentDirectional(-1.0, 0.0), child: Padding( padding: EdgeInsetsDirectional.fromSTEB(10.0, 0.0, 0.0, 5.0), child: Text( functions.getCategoryLabel(getJsonField( docListItem, r'''$.bookkeeping_document_category_id''', )), style: FlutterTheme.of(context).bodyMedium.override( fontFamily: 'Readex Pro', fontSize: 16.0, ), ), ), ), ], ), ), Row( mainAxisSize: MainAxisSize .max, children: [ Align( alignment: AlignmentDirectional( -1.0, 0.0), child: Padding( padding: EdgeInsetsDirectional.fromSTEB( 10.0, 0.0, 0.0, 0.0), child: Text( FFLocalizations.of(context).getText( 'w0abown0' /* Entry Completed */, ), style: FlutterTheme.of(context).bodyMedium.override( fontFamily: 'Readex Pro', color: Color(0xFF06AE25), ), ), ), ), ], ), ], ), ], ), ), Column( mainAxisSize: MainAxisSize .max, children: [ Align( alignment: AlignmentDirectional( 1.0, 0.0), child: Padding( padding: EdgeInsetsDirectional .fromSTEB( 0.0, 0.0, 8.0, 0.0), child: InkWell( splashColor: Colors .transparent, focusColor: Colors .transparent, hoverColor: Colors .transparent, highlightColor: Colors .transparent, onTap: () async { _model.apiResultr1v = await NumstationGroup .viewDocumentCall .call( token: FFAppState() .token, id: getJsonField( docListItem, r'''$.id''', ).toString(), ); if ((_model .apiResultr1v ?.succeeded ?? true)) { context .pushNamed( 'bk_view', queryParameters: { 'fileUrl': serializeParam( getJsonField( docListItem, r'''$..url''', ), ParamType.JSON, ), }.withoutNulls, ); } setState( () {}); }, child: Container( width: 34.0, height: 34.0, decoration: BoxDecoration( color: Color( 0xFF009B9A), shape: BoxShape .circle, ), child: Align( alignment: AlignmentDirectional( 0.0, 0.0), child: Icon( Icons .remove_red_eye_outlined, color: Colors.white, size: 24.0, ), ), ), ), ), ), ], ), ], ), ), Expanded( child: Row( mainAxisSize: MainAxisSize.max, mainAxisAlignment: MainAxisAlignment .end, crossAxisAlignment: CrossAxisAlignment .end, children: [ Align( alignment: AlignmentDirectional( 1.0, 0.0), child: Text( functions .formatDate2( getJsonField( docListItem, r'''$.created_at''', ).toString()), style: FlutterTheme .of(context) .bodyMedium, ), ), Align( alignment: AlignmentDirectional( 1.0, 0.0), child: Text( FFLocalizations.of( context) .getText( 'fq4g2l15' /* - */, ), style: FlutterTheme .of(context) .bodyMedium, ), ), Align( alignment: AlignmentDirectional( 1.0, 0.0), child: Padding( padding: EdgeInsetsDirectional .fromSTEB( 0.0, 0.0, 10.0, 0.0), child: Text( functions .formatTime( getJsonField( docListItem, r'''$.created_at''', ).toString()), style: FlutterTheme.of( context) .bodyMedium, ), ), ), ], ), ), ], ), ), ), ); }), ); }, ); }, ), ], ), ), ), ), ], ), ), Align( alignment: AlignmentDirectional(0.0, 1.0), child: wrapWithModel( model: _model.navBar1Model, updateCallback: () => setState(() {}), child: NavBar1Widget(), ), ), Align( alignment: AlignmentDirectional(0.0, -1.0), child: wrapWithModel( model: _model.appbarModel, updateCallback: () => setState(() {}), child: AppbarWidget(), ), ), Align( alignment: AlignmentDirectional(1.07, -0.97), child: Padding( padding: EdgeInsetsDirectional.fromSTEB(0.0, 550.0, 30.0, 0.0), child: InkWell( splashColor: Colors.transparent, focusColor: Colors.transparent, hoverColor: Colors.transparent, highlightColor: Colors.transparent, onTap: () async { context.pushNamed('chatbox'); }, child: Container( width: 71.0, height: 71.0, decoration: BoxDecoration( gradient: LinearGradient( colors: [Color(0xFFE7E63B), Color(0xFFC6E6D7)], stops: [0.0, 1.0], begin: AlignmentDirectional(-1.0, 0.0), end: AlignmentDirectional(1.0, 0), ), shape: BoxShape.circle, ), child: ClipRRect( borderRadius: BorderRadius.circular(8.0), child: SvgPicture.asset( 'assets/images/message-2.svg', width: 100.0, height: 100.0, fit: BoxFit.none, ), ), ), ), ), ), ], ), ), ), ); } }