Projekt in leafittome umbenannt (App-Name LeafItToMe, Bundle-ID dev.leafittome.app)
- pubspec, Paket-Imports, App-Klasse, ARB-Titel, iOS/Android-Konfiguration - README und Doku auf neuen Namen und Repo leafittome umgestellt Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
parent
c7b22a6f86
commit
a5b79193dd
17 changed files with 35 additions and 35 deletions
|
|
@ -1,4 +1,4 @@
|
||||||
# Planty 🌱
|
# LeafItToMe 🌱
|
||||||
|
|
||||||
App zur Verwaltung und Pflege von Pflanzen — für den eigenen Haushalt und Pflanzen-Sitter.
|
App zur Verwaltung und Pflege von Pflanzen — für den eigenen Haushalt und Pflanzen-Sitter.
|
||||||
|
|
||||||
|
|
@ -36,4 +36,4 @@ flutter analyze # Statische Analyse
|
||||||
- **Firebase** (Auth, Firestore, Storage, Cloud Functions, FCM) — Anbindung folgt im nächsten Block
|
- **Firebase** (Auth, Firestore, Storage, Cloud Functions, FCM) — Anbindung folgt im nächsten Block
|
||||||
- **KI hybrid:** PlantNet (kostenlose Arterkennung) + Claude (Pflegetexte, Diagnose) über Cloud Functions
|
- **KI hybrid:** PlantNet (kostenlose Arterkennung) + Claude (Pflegetexte, Diagnose) über Cloud Functions
|
||||||
- **i18n:** Alle Texte liegen in `lib/l10n/app_de.arb`; Englisch ist später nur eine zweite ARB-Datei
|
- **i18n:** Alle Texte liegen in `lib/l10n/app_de.arb`; Englisch ist später nur eine zweite ARB-Datei
|
||||||
- Bundle-ID: vorläufig `dev.planty.app` — wird vor dem ersten TestFlight-Upload final gesetzt
|
- Bundle-ID: vorläufig `dev.leafittome.app` — wird vor dem ersten TestFlight-Upload final gesetzt
|
||||||
|
|
|
||||||
|
|
@ -6,7 +6,7 @@ plugins {
|
||||||
}
|
}
|
||||||
|
|
||||||
android {
|
android {
|
||||||
namespace = "dev.planty.planty"
|
namespace = "dev.leafittome.app"
|
||||||
compileSdk = flutter.compileSdkVersion
|
compileSdk = flutter.compileSdkVersion
|
||||||
ndkVersion = flutter.ndkVersion
|
ndkVersion = flutter.ndkVersion
|
||||||
|
|
||||||
|
|
@ -21,7 +21,7 @@ android {
|
||||||
|
|
||||||
defaultConfig {
|
defaultConfig {
|
||||||
// TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html).
|
// TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html).
|
||||||
applicationId = "dev.planty.planty"
|
applicationId = "dev.leafittome.app"
|
||||||
// You can update the following values to match your application needs.
|
// You can update the following values to match your application needs.
|
||||||
// For more information, see: https://flutter.dev/to/review-gradle-config.
|
// For more information, see: https://flutter.dev/to/review-gradle-config.
|
||||||
minSdk = flutter.minSdkVersion
|
minSdk = flutter.minSdkVersion
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
<manifest xmlns:android="http://schemas.android.com/apk/res/android">
|
<manifest xmlns:android="http://schemas.android.com/apk/res/android">
|
||||||
<application
|
<application
|
||||||
android:label="planty"
|
android:label="LeafItToMe"
|
||||||
android:name="${applicationName}"
|
android:name="${applicationName}"
|
||||||
android:icon="@mipmap/ic_launcher">
|
android:icon="@mipmap/ic_launcher">
|
||||||
<activity
|
<activity
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
package dev.planty.planty
|
package dev.leafittome.app
|
||||||
|
|
||||||
import io.flutter.embedding.android.FlutterActivity
|
import io.flutter.embedding.android.FlutterActivity
|
||||||
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
# Architektur & Projektstruktur
|
# Architektur & Projektstruktur
|
||||||
|
|
||||||
Dieses Dokument erklärt den Aufbau des Planty-Codes — auch als Blaupause für weitere Flutter-Apps.
|
Dieses Dokument erklärt den Aufbau des LeafItToMe-Codes — auch als Blaupause für weitere Flutter-Apps.
|
||||||
|
|
||||||
## Ordnerstruktur
|
## Ordnerstruktur
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -6,7 +6,7 @@ Firebase ist Googles „Backend als Dienst": Es liefert uns Login (**Auth**), Da
|
||||||
|
|
||||||
## Was wofür? (Überblick)
|
## Was wofür? (Überblick)
|
||||||
|
|
||||||
| Baustein | Aufgabe in Planty |
|
| Baustein | Aufgabe in LeafItToMe |
|
||||||
| --- | --- |
|
| --- | --- |
|
||||||
| **Authentication** | Login mit E-Mail+Passwort, Google und Apple |
|
| **Authentication** | Login mit E-Mail+Passwort, Google und Apple |
|
||||||
| **Cloud Firestore** | Datenbank: Haushalte, Pflanzen, Stellplätze, Bestätigungen — synchronisiert in Echtzeit auf alle Geräte des Haushalts |
|
| **Cloud Firestore** | Datenbank: Haushalte, Pflanzen, Stellplätze, Bestätigungen — synchronisiert in Echtzeit auf alle Geräte des Haushalts |
|
||||||
|
|
@ -17,7 +17,7 @@ Firebase ist Googles „Backend als Dienst": Es liefert uns Login (**Auth**), Da
|
||||||
## Schritt 1: Firebase-Projekt anlegen (machst du, ~10 Minuten)
|
## Schritt 1: Firebase-Projekt anlegen (machst du, ~10 Minuten)
|
||||||
|
|
||||||
1. Öffne <https://console.firebase.google.com> und melde dich mit deinem Google-Konto an.
|
1. Öffne <https://console.firebase.google.com> und melde dich mit deinem Google-Konto an.
|
||||||
2. **„Projekt hinzufügen"** → Name: `planty` → Google Analytics kannst du **deaktivieren** (brauchen wir nicht).
|
2. **„Projekt hinzufügen"** → Name: `leafittome` → Google Analytics kannst du **deaktivieren** (brauchen wir nicht).
|
||||||
3. Nach dem Anlegen bist du in der Projekt-Übersicht. Fertig für heute — Apps registrieren wir gemeinsam per CLI (Schritt 3).
|
3. Nach dem Anlegen bist du in der Projekt-Übersicht. Fertig für heute — Apps registrieren wir gemeinsam per CLI (Schritt 3).
|
||||||
|
|
||||||
## Schritt 2: Auf den Blaze-Tarif umstellen (machst du, ~5 Minuten)
|
## Schritt 2: Auf den Blaze-Tarif umstellen (machst du, ~5 Minuten)
|
||||||
|
|
|
||||||
|
|
@ -90,11 +90,11 @@ FORGEJO__server__ROOT_URL=https://git.deine-domain.de/
|
||||||
|
|
||||||
- **2FA aktivieren:** Einstellungen → Sicherheit → Zwei-Faktor-Authentifizierung (z. B. mit derselben Authenticator-App wie für Coolify).
|
- **2FA aktivieren:** Einstellungen → Sicherheit → Zwei-Faktor-Authentifizierung (z. B. mit derselben Authenticator-App wie für Coolify).
|
||||||
- **Kontrolle Registrierung:** Site Administration → Configuration — „Registrierung deaktiviert" muss aktiv sein (kommt aus der Umgebungsvariable).
|
- **Kontrolle Registrierung:** Site Administration → Configuration — „Registrierung deaktiviert" muss aktiv sein (kommt aus der Umgebungsvariable).
|
||||||
- Da Forgejo nur über den Coolify-Proxy (HTTPS) und Port 2222 (Git-SSH mit Schlüssel) erreichbar ist, ist die Angriffsfläche damit klein: kein offenes Web-Registrierungsformular, keine Passwort-Logins über SSH.
|
- Da Forgejo nur über den Coolify-Proxy (HTTPS) erreichbar ist (Git-SSH auf Port 2222 nur, falls du Variante B nutzt), ist die Angriffsfläche klein: kein offenes Web-Registrierungsformular, keine Passwort-Logins über SSH.
|
||||||
|
|
||||||
## 5. Repository anlegen und Planty pushen
|
## 5. Repository anlegen und LeafItToMe pushen
|
||||||
|
|
||||||
In der Web-UI **Neues Repository** → Name `planty` → **ohne** README/Lizenz initialisieren (das Repo existiert lokal schon).
|
In der Web-UI **Neues Repository** → Name `leafittome` → **ohne** README/Lizenz initialisieren (das Repo existiert lokal schon).
|
||||||
|
|
||||||
### Variante A: HTTPS mit Zugriffs-Token (empfohlen — kein extra Port nötig)
|
### Variante A: HTTPS mit Zugriffs-Token (empfohlen — kein extra Port nötig)
|
||||||
|
|
||||||
|
|
@ -103,7 +103,7 @@ In der Web-UI **Neues Repository** → Name `planty` → **ohne** README/Lizenz
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
cd ~/Documents/Projekte/Planty
|
cd ~/Documents/Projekte/Planty
|
||||||
git remote add origin https://git.deine-domain.de/<dein-nutzer>/planty.git
|
git remote add origin https://git.deine-domain.de/<dein-nutzer>/leafittome.git
|
||||||
git push -u origin main
|
git push -u origin main
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|
@ -121,10 +121,10 @@ Die Forgejo-Vorlage hat kein Port-Mapping in der Coolify-UI, aber jede Service-V
|
||||||
Zusätzlich als Umgebungsvariablen `FORGEJO__server__SSH_DOMAIN=git.deine-domain.de` und `FORGEJO__server__SSH_PORT=2222` setzen (für korrekte Clone-URLs), Port 2222 in der Hetzner-Firewall öffnen, Service neu deployen. Dann in Forgejo unter **Einstellungen → SSH/GPG-Schlüssel** den Inhalt von `~/.ssh/id_ed25519.pub` hinterlegen und als Remote nutzen:
|
Zusätzlich als Umgebungsvariablen `FORGEJO__server__SSH_DOMAIN=git.deine-domain.de` und `FORGEJO__server__SSH_PORT=2222` setzen (für korrekte Clone-URLs), Port 2222 in der Hetzner-Firewall öffnen, Service neu deployen. Dann in Forgejo unter **Einstellungen → SSH/GPG-Schlüssel** den Inhalt von `~/.ssh/id_ed25519.pub` hinterlegen und als Remote nutzen:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
git remote add origin ssh://git@git.deine-domain.de:2222/<dein-nutzer>/planty.git
|
git remote add origin ssh://git@git.deine-domain.de:2222/<dein-nutzer>/leafittome.git
|
||||||
```
|
```
|
||||||
|
|
||||||
Ab dann genügt nach jedem Arbeitsstand ein `git push`. Test: Die Dateien erscheinen unter `https://git.deine-domain.de/<dein-nutzer>/planty`.
|
Ab dann genügt nach jedem Arbeitsstand ein `git push`. Test: Die Dateien erscheinen unter `https://git.deine-domain.de/<dein-nutzer>/leafittome`.
|
||||||
|
|
||||||
## 6. Backups
|
## 6. Backups
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -369,7 +369,7 @@
|
||||||
"$(inherited)",
|
"$(inherited)",
|
||||||
"@executable_path/Frameworks",
|
"@executable_path/Frameworks",
|
||||||
);
|
);
|
||||||
PRODUCT_BUNDLE_IDENTIFIER = dev.planty.planty;
|
PRODUCT_BUNDLE_IDENTIFIER = dev.leafittome.app;
|
||||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||||
SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h";
|
SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h";
|
||||||
SWIFT_VERSION = 5.0;
|
SWIFT_VERSION = 5.0;
|
||||||
|
|
@ -385,7 +385,7 @@
|
||||||
CURRENT_PROJECT_VERSION = 1;
|
CURRENT_PROJECT_VERSION = 1;
|
||||||
GENERATE_INFOPLIST_FILE = YES;
|
GENERATE_INFOPLIST_FILE = YES;
|
||||||
MARKETING_VERSION = 1.0;
|
MARKETING_VERSION = 1.0;
|
||||||
PRODUCT_BUNDLE_IDENTIFIER = dev.planty.planty.RunnerTests;
|
PRODUCT_BUNDLE_IDENTIFIER = dev.leafittome.app.RunnerTests;
|
||||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||||
SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG;
|
SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG;
|
||||||
SWIFT_OPTIMIZATION_LEVEL = "-Onone";
|
SWIFT_OPTIMIZATION_LEVEL = "-Onone";
|
||||||
|
|
@ -402,7 +402,7 @@
|
||||||
CURRENT_PROJECT_VERSION = 1;
|
CURRENT_PROJECT_VERSION = 1;
|
||||||
GENERATE_INFOPLIST_FILE = YES;
|
GENERATE_INFOPLIST_FILE = YES;
|
||||||
MARKETING_VERSION = 1.0;
|
MARKETING_VERSION = 1.0;
|
||||||
PRODUCT_BUNDLE_IDENTIFIER = dev.planty.planty.RunnerTests;
|
PRODUCT_BUNDLE_IDENTIFIER = dev.leafittome.app.RunnerTests;
|
||||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||||
SWIFT_VERSION = 5.0;
|
SWIFT_VERSION = 5.0;
|
||||||
TEST_HOST = "$(BUILT_PRODUCTS_DIR)/Runner.app/$(BUNDLE_EXECUTABLE_FOLDER_PATH)/Runner";
|
TEST_HOST = "$(BUILT_PRODUCTS_DIR)/Runner.app/$(BUNDLE_EXECUTABLE_FOLDER_PATH)/Runner";
|
||||||
|
|
@ -417,7 +417,7 @@
|
||||||
CURRENT_PROJECT_VERSION = 1;
|
CURRENT_PROJECT_VERSION = 1;
|
||||||
GENERATE_INFOPLIST_FILE = YES;
|
GENERATE_INFOPLIST_FILE = YES;
|
||||||
MARKETING_VERSION = 1.0;
|
MARKETING_VERSION = 1.0;
|
||||||
PRODUCT_BUNDLE_IDENTIFIER = dev.planty.planty.RunnerTests;
|
PRODUCT_BUNDLE_IDENTIFIER = dev.leafittome.app.RunnerTests;
|
||||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||||
SWIFT_VERSION = 5.0;
|
SWIFT_VERSION = 5.0;
|
||||||
TEST_HOST = "$(BUILT_PRODUCTS_DIR)/Runner.app/$(BUNDLE_EXECUTABLE_FOLDER_PATH)/Runner";
|
TEST_HOST = "$(BUILT_PRODUCTS_DIR)/Runner.app/$(BUNDLE_EXECUTABLE_FOLDER_PATH)/Runner";
|
||||||
|
|
@ -549,7 +549,7 @@
|
||||||
"$(inherited)",
|
"$(inherited)",
|
||||||
"@executable_path/Frameworks",
|
"@executable_path/Frameworks",
|
||||||
);
|
);
|
||||||
PRODUCT_BUNDLE_IDENTIFIER = dev.planty.planty;
|
PRODUCT_BUNDLE_IDENTIFIER = dev.leafittome.app;
|
||||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||||
SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h";
|
SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h";
|
||||||
SWIFT_OPTIMIZATION_LEVEL = "-Onone";
|
SWIFT_OPTIMIZATION_LEVEL = "-Onone";
|
||||||
|
|
@ -572,7 +572,7 @@
|
||||||
"$(inherited)",
|
"$(inherited)",
|
||||||
"@executable_path/Frameworks",
|
"@executable_path/Frameworks",
|
||||||
);
|
);
|
||||||
PRODUCT_BUNDLE_IDENTIFIER = dev.planty.planty;
|
PRODUCT_BUNDLE_IDENTIFIER = dev.leafittome.app;
|
||||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||||
SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h";
|
SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h";
|
||||||
SWIFT_VERSION = 5.0;
|
SWIFT_VERSION = 5.0;
|
||||||
|
|
|
||||||
|
|
@ -5,7 +5,7 @@
|
||||||
<key>CFBundleDevelopmentRegion</key>
|
<key>CFBundleDevelopmentRegion</key>
|
||||||
<string>$(DEVELOPMENT_LANGUAGE)</string>
|
<string>$(DEVELOPMENT_LANGUAGE)</string>
|
||||||
<key>CFBundleDisplayName</key>
|
<key>CFBundleDisplayName</key>
|
||||||
<string>Planty</string>
|
<string>LeafItToMe</string>
|
||||||
<key>CFBundleExecutable</key>
|
<key>CFBundleExecutable</key>
|
||||||
<string>$(EXECUTABLE_NAME)</string>
|
<string>$(EXECUTABLE_NAME)</string>
|
||||||
<key>CFBundleIdentifier</key>
|
<key>CFBundleIdentifier</key>
|
||||||
|
|
@ -13,7 +13,7 @@
|
||||||
<key>CFBundleInfoDictionaryVersion</key>
|
<key>CFBundleInfoDictionaryVersion</key>
|
||||||
<string>6.0</string>
|
<string>6.0</string>
|
||||||
<key>CFBundleName</key>
|
<key>CFBundleName</key>
|
||||||
<string>planty</string>
|
<string>leafittome</string>
|
||||||
<key>CFBundlePackageType</key>
|
<key>CFBundlePackageType</key>
|
||||||
<string>APPL</string>
|
<string>APPL</string>
|
||||||
<key>CFBundleShortVersionString</key>
|
<key>CFBundleShortVersionString</key>
|
||||||
|
|
|
||||||
|
|
@ -6,8 +6,8 @@ import 'core/settings/settings_provider.dart';
|
||||||
import 'core/theme/app_theme.dart';
|
import 'core/theme/app_theme.dart';
|
||||||
import 'l10n/generated/app_localizations.dart';
|
import 'l10n/generated/app_localizations.dart';
|
||||||
|
|
||||||
class PlantyApp extends ConsumerWidget {
|
class LeafItToMeApp extends ConsumerWidget {
|
||||||
const PlantyApp({super.key});
|
const LeafItToMeApp({super.key});
|
||||||
|
|
||||||
@override
|
@override
|
||||||
Widget build(BuildContext context, WidgetRef ref) {
|
Widget build(BuildContext context, WidgetRef ref) {
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
|
|
||||||
/// Planty-Grün als Ausgangsfarbe für das gesamte Farbschema.
|
/// LeafItToMe-Grün als Ausgangsfarbe für das gesamte Farbschema.
|
||||||
const _seedColor = Color(0xFF2E7D32);
|
const _seedColor = Color(0xFF2E7D32);
|
||||||
|
|
||||||
ThemeData buildAppTheme({
|
ThemeData buildAppTheme({
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
{
|
{
|
||||||
"@@locale": "de",
|
"@@locale": "de",
|
||||||
"appTitle": "Planty",
|
"appTitle": "LeafItToMe",
|
||||||
"menuToday": "Heute",
|
"menuToday": "Heute",
|
||||||
"menuPlants": "Meine Pflanzen",
|
"menuPlants": "Meine Pflanzen",
|
||||||
"menuLocations": "Stellplätze",
|
"menuLocations": "Stellplätze",
|
||||||
|
|
|
||||||
|
|
@ -97,7 +97,7 @@ abstract class AppLocalizations {
|
||||||
/// No description provided for @appTitle.
|
/// No description provided for @appTitle.
|
||||||
///
|
///
|
||||||
/// In de, this message translates to:
|
/// In de, this message translates to:
|
||||||
/// **'Planty'**
|
/// **'LeafItToMe'**
|
||||||
String get appTitle;
|
String get appTitle;
|
||||||
|
|
||||||
/// No description provided for @menuToday.
|
/// No description provided for @menuToday.
|
||||||
|
|
|
||||||
|
|
@ -9,7 +9,7 @@ class AppLocalizationsDe extends AppLocalizations {
|
||||||
AppLocalizationsDe([String locale = 'de']) : super(locale);
|
AppLocalizationsDe([String locale = 'de']) : super(locale);
|
||||||
|
|
||||||
@override
|
@override
|
||||||
String get appTitle => 'Planty';
|
String get appTitle => 'LeafItToMe';
|
||||||
|
|
||||||
@override
|
@override
|
||||||
String get menuToday => 'Heute';
|
String get menuToday => 'Heute';
|
||||||
|
|
|
||||||
|
|
@ -11,7 +11,7 @@ Future<void> main() async {
|
||||||
runApp(
|
runApp(
|
||||||
ProviderScope(
|
ProviderScope(
|
||||||
overrides: [sharedPreferencesProvider.overrideWithValue(prefs)],
|
overrides: [sharedPreferencesProvider.overrideWithValue(prefs)],
|
||||||
child: const PlantyApp(),
|
child: const LeafItToMeApp(),
|
||||||
),
|
),
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,5 @@
|
||||||
name: planty
|
name: leafittome
|
||||||
description: "Planty – App zur Verwaltung und Pflege von Pflanzen."
|
description: "LeafItToMe – App zur Verwaltung und Pflege von Pflanzen."
|
||||||
# The following line prevents the package from being accidentally published to
|
# The following line prevents the package from being accidentally published to
|
||||||
# pub.dev using `flutter pub publish`. This is preferred for private packages.
|
# pub.dev using `flutter pub publish`. This is preferred for private packages.
|
||||||
publish_to: 'none' # Remove this line if you wish to publish to pub.dev
|
publish_to: 'none' # Remove this line if you wish to publish to pub.dev
|
||||||
|
|
|
||||||
|
|
@ -1,8 +1,8 @@
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
import 'package:flutter_riverpod/flutter_riverpod.dart';
|
||||||
import 'package:flutter_test/flutter_test.dart';
|
import 'package:flutter_test/flutter_test.dart';
|
||||||
import 'package:planty/app.dart';
|
import 'package:leafittome/app.dart';
|
||||||
import 'package:planty/core/settings/settings_provider.dart';
|
import 'package:leafittome/core/settings/settings_provider.dart';
|
||||||
import 'package:shared_preferences/shared_preferences.dart';
|
import 'package:shared_preferences/shared_preferences.dart';
|
||||||
|
|
||||||
Future<Widget> buildTestApp() async {
|
Future<Widget> buildTestApp() async {
|
||||||
|
|
@ -10,7 +10,7 @@ Future<Widget> buildTestApp() async {
|
||||||
final prefs = await SharedPreferences.getInstance();
|
final prefs = await SharedPreferences.getInstance();
|
||||||
return ProviderScope(
|
return ProviderScope(
|
||||||
overrides: [sharedPreferencesProvider.overrideWithValue(prefs)],
|
overrides: [sharedPreferencesProvider.overrideWithValue(prefs)],
|
||||||
child: const PlantyApp(),
|
child: const LeafItToMeApp(),
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue