Profile Data

List<ProfileCategory> profileCategories = [
  ProfileCategory(
    title: 'Général',
    items: [
      ProfileItem(
        title: 'Mon Projet',
        icon: 'luggage'
        id: 'project'
      ),
      ProfileItem(
        title: 'Taux de change',
        icon: 'swap',
        id: 'exchange-rates'
      ),
    ],
  ),
  ProfileCategory(
    title: 'Contact',
    items: [
      ProfileItem(
        title: 'Aide',
        icon: 'help',
        id: 'help'
      ),
      ProfileItem(
        title: 'Faire part de mon expérience',
        icon: 'feedback',
        id: 'feedback'
      ),
      ProfileItem(
        title: 'Proposer une nouvelle ressource',
        icon: 'document-dismiss',
        id: 'document-proposal'
      ),
    ],
  ),
  ProfileCategory(
    title: 'Applications complémentaires',
    items: [
      ProfileItem(
        title: 'Pilote Budget',
        icon: 'pilot-budget',
        id: 'pilot-budget'
      ),
      ProfileItem(
        title: 'Pilote Dépenses',
        icon: 'pilot-expense',
        id: 'pilot-expense'
      ),
    ],
  ),
  ProfileCategory(
    title: 'À propos',
    items: [
      ProfileItem(
        title: 'Mentions légales',
        icon: 'information',
        id: 'legal-informations'
      ),
      ProfileItem(
        title: 'Politique de confidentialité',
        icon: 'privacy-policy',
        id: 'privacy-policy'
      ),
      ProfileItem(
        title: 'Supprimer les données',
        icon: 'delete',
        id: 'delete',
        color: Colors.primary700
      ),
    ],
  ),
];

Action for each ProfileItem

switch (profileItem.id) {
  case 'project':
    // Open /project page
    break;
  case 'exchange-rates':
    // Open /exchange-rate page
    break;
  case 'help':
    // Nothing for the moment
    break;
  case 'feedback':
    // Open intern mailer
    break;
  case 'document-proposal':
    // Open intern mailer
    break;
  case 'pilot-budget':
    // If Android : Redirect user to https://play.google.com/store/apps/details?id=com.pilotedepenses 
    // If IOS : Redirect user to  https://apps.apple.com/us/app/pilote-dépenses/id1539944350
    break;
  case 'pilot-expense':
    // If Android : Redirect user to https://play.google.com/store/apps/details?id=com.theschoolab.pilotebudget
    // If IOS : Redirect user to https://apps.apple.com/us/app/pilote-budget/id1335367675
    break;
  case 'legal-informations':
    // Open reader with document Id of legal informations
    break;
  case 'privacy-policy':
    // Open reader with document Id of privacy policy
    break;
  case 'delete':
    // Open date deletion bottomSheet 
    break;
}