import 'dart:convert'; import 'package:auto_size_text/auto_size_text.dart'; import 'package:flutter/material.dart'; import 'package:manager_app/Components/multi_input_modal.dart'; import 'package:manager_app/Components/rounded_input_field.dart'; import 'package:manager_app/constants.dart'; import 'package:managerapi/api.dart'; class MultiStringContainer extends StatelessWidget { final Color color; final String label; final List initialValue; final Function onGetResult; final int maxLines; const MultiStringContainer({ Key key, this.color = kSecond, this.label, this.initialValue, this.onGetResult, this.maxLines, }) : super(key: key); @override Widget build(BuildContext context) { Size size = MediaQuery.of(context).size; return Container( child: Row( children: [ Align( alignment: AlignmentDirectional.centerStart, child: Text(label, style: TextStyle(fontSize: 25, fontWeight: FontWeight.w300)) ), Padding( padding: const EdgeInsets.all(10.0), child: Container( width: size.width *0.15, child: InkWell( onTap: () { List newValues = new List(); // Make a copy initialValue.forEach((value) { newValues.add(TranslationDTO.fromJson(jsonDecode(jsonEncode(value)))); }); showMultiStringInput(label, initialValue, newValues, onGetResult, maxLines, context); }, child: Container( decoration: BoxDecoration( color: color, borderRadius: BorderRadius.circular(50), ), child: Padding( padding: const EdgeInsets.only(left: 5, right: 5, top: 15, bottom: 15), child: Center( child: AutoSizeText( "Changer les traductions", maxLines: 2, ) ), ) ), ), ), ), ], ), ); } }