import 'package:file_picker/file_picker.dart'; import 'package:flutter/material.dart'; import 'package:maxdash/controller/my_controller.dart'; import 'package:maxdash/helpers/widgets/my_form_validator.dart'; enum Status { online, offline, draft; const Status(); } enum Category { fashion, grocery, vegetables, fruits, electronics, kids; const Category(); } class AddProductController extends MyController { List files = []; MyFormValidator basicValidator = MyFormValidator(); Status selectedGender = Status.online; @override void onInit() { super.onInit(); basicValidator.addField( 'name', label: "Product Name", required: true, controller: TextEditingController(), ); basicValidator.addField( 'shop_name', label: "shop_name", required: true, controller: TextEditingController(), ); basicValidator.addField( 'description', label: "description", required: true, controller: TextEditingController(), ); basicValidator.addField( 'tags', label: "Tags", required: true, controller: TextEditingController(), ); } bool showOnline = true; void setOnlineType(bool value) { showOnline = value; update(); } final List categories = []; void onChangeGender(Status? value) { selectedGender = value ?? selectedGender; update(); } Future pickFile() async { var result = await FilePicker.platform.pickFiles(); if (result?.files[0] != null) { files.add(result!.files[0]); } update(); } void removeFile(PlatformFile file) { files.remove(file); update(); } }