diff --git a/finlog_app/app/lib/modules/settings/modules/help/feedback_view.dart b/finlog_app/app/lib/modules/settings/modules/help/feedback_view.dart new file mode 100644 index 0000000..05b24b5 --- /dev/null +++ b/finlog_app/app/lib/modules/settings/modules/help/feedback_view.dart @@ -0,0 +1,25 @@ +import 'package:flutter/material.dart'; + +class FeedbackPanel extends StatelessWidget { + const FeedbackPanel({super.key}); + + @override + Widget build(BuildContext context) { + return Column( + children: [ + // const PanelHeader(title: 'Feedback'), + Expanded( + child: ListView( + padding: const EdgeInsets.all(16), + children: const [ + ListTile( + leading: Icon(Icons.feedback_outlined), + title: Text('Feedback senden'), + ), + ], + ), + ), + ], + ); + } +} diff --git a/finlog_app/app/lib/modules/settings/modules/help/help_view.dart b/finlog_app/app/lib/modules/settings/modules/help/help_view.dart new file mode 100644 index 0000000..c60f688 --- /dev/null +++ b/finlog_app/app/lib/modules/settings/modules/help/help_view.dart @@ -0,0 +1,22 @@ +import 'package:flutter/material.dart'; + +class HelpPanel extends StatelessWidget { + const HelpPanel({super.key}); + + @override + Widget build(BuildContext context) { + return Column( + children: [ + // const PanelHeader(title: 'Hilfe'), + Expanded( + child: ListView( + padding: const EdgeInsets.all(16), + children: const [ + ListTile(leading: Icon(Icons.help_outline), title: Text('FAQ')), + ], + ), + ), + ], + ); + } +} diff --git a/finlog_app/app/lib/modules/settings/modules/help/legal_view.dart b/finlog_app/app/lib/modules/settings/modules/help/legal_view.dart new file mode 100644 index 0000000..85f123d --- /dev/null +++ b/finlog_app/app/lib/modules/settings/modules/help/legal_view.dart @@ -0,0 +1,29 @@ +import 'package:flutter/material.dart'; + +class LegalPanel extends StatelessWidget { + const LegalPanel({super.key}); + + @override + Widget build(BuildContext context) { + return Column( + children: [ + // const PanelHeader(title: 'Rechtliches & Datenschutz'), + Expanded( + child: ListView( + padding: const EdgeInsets.all(16), + children: const [ + ListTile( + leading: Icon(Icons.privacy_tip_outlined), + title: Text('Datenschutz'), + ), + ListTile( + leading: Icon(Icons.article_outlined), + title: Text('Nutzungsbedingungen'), + ), + ], + ), + ), + ], + ); + } +} diff --git a/finlog_app/app/lib/modules/settings/modules/user_data/account_management_view.dart b/finlog_app/app/lib/modules/settings/modules/user_data/account_management_view.dart new file mode 100644 index 0000000..cfcf05c --- /dev/null +++ b/finlog_app/app/lib/modules/settings/modules/user_data/account_management_view.dart @@ -0,0 +1,26 @@ +import 'package:flutter/material.dart'; + +class AccountPanel extends StatelessWidget { + const AccountPanel(); + + @override + Widget build(BuildContext context) { + return Column( + children: [ + // const PanelHeader(title: 'Kontoverwaltung'), + Expanded( + child: ListView( + padding: const EdgeInsets.all(16), + children: const [ + ListTile( + leading: Icon(Icons.alternate_email), + title: Text('E-Mail'), + subtitle: Text('max@example.com'), + ), + ], + ), + ), + ], + ); + } +} diff --git a/finlog_app/app/lib/modules/settings/modules/user_data/personal_data_view.dart b/finlog_app/app/lib/modules/settings/modules/user_data/personal_data_view.dart new file mode 100644 index 0000000..d087c39 --- /dev/null +++ b/finlog_app/app/lib/modules/settings/modules/user_data/personal_data_view.dart @@ -0,0 +1,34 @@ +import 'package:flutter/material.dart'; + +class PersonalPanel extends StatelessWidget { + const PersonalPanel(); + + @override + Widget build(BuildContext context) { + return Column( + children: [ + Expanded( + child: ListView( + padding: const EdgeInsets.all(16), + children: const [ + ListTile( + leading: Icon(Icons.person_outline), + title: Text('Name'), + subtitle: Text('Max Mustermann'), + ), + ListTile( + leading: Icon(Icons.lock_outline), + title: Text('Passwort ändern'), + ), + ListTile( + leading: Icon(Icons.phonelink_lock), + title: Text('2-Faktor-Authentifizierung'), + subtitle: Text('Aus'), + ), + ], + ), + ), + ], + ); + } +} diff --git a/finlog_app/app/lib/modules/settings/settings_view.dart b/finlog_app/app/lib/modules/settings/settings_view.dart index dee0f86..7d9e613 100644 --- a/finlog_app/app/lib/modules/settings/settings_view.dart +++ b/finlog_app/app/lib/modules/settings/settings_view.dart @@ -1,5 +1,10 @@ import 'package:app/core/ui/panel.dart'; import 'package:app/modules/settings/modules/app/app_settings_view.dart'; +import 'package:app/modules/settings/modules/help/feedback_view.dart'; +import 'package:app/modules/settings/modules/help/help_view.dart'; +import 'package:app/modules/settings/modules/help/legal_view.dart'; +import 'package:app/modules/settings/modules/user_data/account_management_view.dart'; +import 'package:app/modules/settings/modules/user_data/personal_data_view.dart'; import 'package:flutter/material.dart'; class SettingsView extends StatelessWidget { @@ -56,27 +61,22 @@ class _CategoryList extends StatelessWidget { tile( Icons.badge_outlined, 'Persönliche Daten', - () => const _PersonalPanel(), + () => const PersonalPanel(), ), tile( Icons.manage_accounts_outlined, 'Kontoverwaltung', - () => const _AccountPanel(), - ), - tile( - Icons.security_outlined, - 'Sicherheit', - () => const _SecurityPanel(), + () => const AccountPanel(), ), const SizedBox(height: 12), const _SectionHeader('Hilfe'), - tile(Icons.help_outline, 'Hilfe', () => const _HelpPanel()), - tile(Icons.feedback_outlined, 'Feedback', () => const _FeedbackPanel()), + tile(Icons.help_outline, 'Hilfe', () => const HelpPanel()), + tile(Icons.feedback_outlined, 'Feedback', () => const FeedbackPanel()), tile( Icons.gavel_outlined, 'Rechtliches & Datenschutz', - () => const _LegalPanel(), + () => const LegalPanel(), ), const SizedBox(height: 24), @@ -114,157 +114,3 @@ class _SectionHeader extends StatelessWidget { ), ); } - -/// ----------------- Detail panels (unchanged) ----------------- - -class _PersonalPanel extends StatelessWidget { - const _PersonalPanel(); - - @override - Widget build(BuildContext context) { - return Column( - children: [ - // const PanelHeader(title: 'Persönliche Daten'), - Expanded( - child: ListView( - padding: const EdgeInsets.all(16), - children: const [ - ListTile( - leading: Icon(Icons.person_outline), - title: Text('Name'), - subtitle: Text('Max Mustermann'), - ), - ], - ), - ), - ], - ); - } -} - -class _AccountPanel extends StatelessWidget { - const _AccountPanel(); - - @override - Widget build(BuildContext context) { - return Column( - children: [ - // const PanelHeader(title: 'Kontoverwaltung'), - Expanded( - child: ListView( - padding: const EdgeInsets.all(16), - children: const [ - ListTile( - leading: Icon(Icons.alternate_email), - title: Text('E-Mail'), - subtitle: Text('max@example.com'), - ), - ], - ), - ), - ], - ); - } -} - -class _SecurityPanel extends StatelessWidget { - const _SecurityPanel(); - - @override - Widget build(BuildContext context) { - return Column( - children: [ - // const PanelHeader(title: 'Sicherheit'), - Expanded( - child: ListView( - padding: const EdgeInsets.all(16), - children: const [ - ListTile( - leading: Icon(Icons.lock_outline), - title: Text('Passwort ändern'), - ), - ListTile( - leading: Icon(Icons.phonelink_lock), - title: Text('2-Faktor-Authentifizierung'), - subtitle: Text('Aus'), - ), - ], - ), - ), - ], - ); - } -} - -class _HelpPanel extends StatelessWidget { - const _HelpPanel(); - - @override - Widget build(BuildContext context) { - return Column( - children: [ - // const PanelHeader(title: 'Hilfe'), - Expanded( - child: ListView( - padding: const EdgeInsets.all(16), - children: const [ - ListTile(leading: Icon(Icons.help_outline), title: Text('FAQ')), - ], - ), - ), - ], - ); - } -} - -class _FeedbackPanel extends StatelessWidget { - const _FeedbackPanel(); - - @override - Widget build(BuildContext context) { - return Column( - children: [ - // const PanelHeader(title: 'Feedback'), - Expanded( - child: ListView( - padding: const EdgeInsets.all(16), - children: const [ - ListTile( - leading: Icon(Icons.feedback_outlined), - title: Text('Feedback senden'), - ), - ], - ), - ), - ], - ); - } -} - -class _LegalPanel extends StatelessWidget { - const _LegalPanel(); - - @override - Widget build(BuildContext context) { - return Column( - children: [ - // const PanelHeader(title: 'Rechtliches & Datenschutz'), - Expanded( - child: ListView( - padding: const EdgeInsets.all(16), - children: const [ - ListTile( - leading: Icon(Icons.privacy_tip_outlined), - title: Text('Datenschutz'), - ), - ListTile( - leading: Icon(Icons.article_outlined), - title: Text('Nutzungsbedingungen'), - ), - ], - ), - ), - ], - ); - } -}