- App.tsx: full navigation (Auth stack + Main tabs with 5 screens) - Auth: LoginScreen, RegisterScreen, ForgotPasswordScreen - HomeScreen: dashboard with IoT metrics, weather widget, alerts, quick actions, sensors - MapScreen: interactive map with layer toggles (6 layers) - MarketplaceScreen: categories (6), products (5), search - ChatScreen: AI chat with quick prompts (4), bot responses - ProfileScreen: user info, stats, menu (9 items), logout - AlertsScreen: alert list with severity, acknowledge - SensorsScreen: sensor list with type filters (6 types), search - ZonesScreen: zone cards with stats - SettingsScreen: language picker (FR/EN/ES/DE), privacy, about - Stores: iotStore (sensors, zones, alerts), notificationStore, uiStore + i18n - Hooks: useSensors, useAlerts, useNotifications, useLocation - Components: Card, Button, LoadingSpinner, ErrorBoundary, Header - Services: iotService, notificationService (with axios API client) - Utils: formatters (temp, AQI, noise, dates), validators (email, password, IBAN) - Theme: colors.ts with full design system (Blue Ocean palette) - Ditto: fixed MongoDB connection, new JWT secrets, official gateway image
54 lines
1.6 KiB
Groovy
54 lines
1.6 KiB
Groovy
apply plugin: 'com.android.library'
|
|
|
|
group = 'host.exp.exponent'
|
|
version = '0.28.19'
|
|
|
|
def expoModulesCorePlugin = new File(project(":expo-modules-core").projectDir.absolutePath, "ExpoModulesCorePlugin.gradle")
|
|
apply from: expoModulesCorePlugin
|
|
applyKotlinExpoModulesCorePlugin()
|
|
useCoreDependencies()
|
|
useDefaultAndroidSdkVersions()
|
|
useExpoPublishing()
|
|
|
|
android {
|
|
namespace "expo.modules.notifications"
|
|
defaultConfig {
|
|
versionCode 21
|
|
versionName '0.28.19'
|
|
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
|
|
}
|
|
|
|
buildFeatures {
|
|
buildConfig true
|
|
}
|
|
testOptions {
|
|
unitTests.all { test ->
|
|
testLogging {
|
|
outputs.upToDateWhen { false }
|
|
events "passed", "failed", "skipped", "standardError"
|
|
showCauses true
|
|
showExceptions true
|
|
showStandardStreams true
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
dependencies {
|
|
implementation 'androidx.core:core:1.6.0'
|
|
implementation 'androidx.lifecycle:lifecycle-runtime:2.2.0'
|
|
implementation 'androidx.lifecycle:lifecycle-process:2.2.0'
|
|
implementation 'androidx.lifecycle:lifecycle-common-java8:2.2.0'
|
|
implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-android:1.7.3'
|
|
|
|
// release notes in https://firebase.google.com/support/release-notes/android - cmd + f "Cloud Messaging version"
|
|
implementation 'com.google.firebase:firebase-messaging:24.0.1'
|
|
|
|
implementation 'me.leolin:ShortcutBadger:1.1.22@aar'
|
|
|
|
if (project.findProject(':expo-modules-test-core')) {
|
|
testImplementation project(':expo-modules-test-core')
|
|
androidTestImplementation project(':expo-modules-test-core')
|
|
}
|
|
}
|