Files
Eric FELIXINE e30ae8ed09 feat(smart-app): implement complete mobile app MVP
- 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
2026-06-01 18:00:35 -04:00

165 lines
4.5 KiB
JSON

{
"name": "react-native",
"version": "0.74.0",
"description": "A framework for building native apps using React",
"license": "MIT",
"repository": {
"type": "git",
"url": "https://github.com/facebook/react-native.git",
"directory": "packages/react-native"
},
"homepage": "https://reactnative.dev/",
"keywords": [
"react",
"react-native",
"android",
"ios",
"mobile",
"cross-platform",
"app-framework",
"mobile-development"
],
"bugs": "https://github.com/facebook/react-native/issues",
"engines": {
"node": ">=18"
},
"bin": "./cli.js",
"types": "types",
"jest-junit": {
"outputDirectory": "reports/junit",
"outputName": "js-test-results.xml"
},
"files": [
"android",
"build.gradle.kts",
"cli.js",
"flow",
"gradle.properties",
"gradle/libs.versions.toml",
"index.js",
"interface.js",
"jest-preset.js",
"jest",
"Libraries",
"LICENSE",
"local-cli",
"React-Core.podspec",
"react-native.config.js",
"React.podspec",
"React",
"!React/Fabric/RCTThirdPartyFabricComponentsProvider.*",
"ReactAndroid",
"ReactApple",
"ReactCommon",
"README.md",
"rn-get-polyfills.js",
"scripts/compose-source-maps.js",
"scripts/find-node-for-xcode.sh",
"scripts/generate-codegen-artifacts.js",
"scripts/generate-provider-cli.js",
"scripts/generate-specs-cli.js",
"scripts/codegen",
"!scripts/codegen/__tests__",
"!scripts/codegen/__test_fixtures__",
"scripts/hermes/hermes-utils.js",
"scripts/hermes/prepare-hermes-for-build.js",
"scripts/ios-configure-glog.sh",
"scripts/xcode/ccache-clang++.sh",
"scripts/xcode/ccache-clang.sh",
"scripts/xcode/ccache.conf",
"scripts/xcode/with-environment.sh",
"scripts/native_modules.rb",
"scripts/node-binary.sh",
"scripts/packager.sh",
"scripts/packager-reporter.js",
"scripts/react_native_pods_utils/script_phases.rb",
"scripts/react_native_pods_utils/script_phases.sh",
"scripts/react_native_pods.rb",
"scripts/cocoapods",
"!scripts/cocoapods/__tests__",
"scripts/react-native-xcode.sh",
"sdks/.hermesversion",
"sdks/hermes-engine",
"sdks/hermesc",
"settings.gradle.kts",
"src",
"template.config.js",
"template",
"!template/node_modules",
"!template/package-lock.json",
"!template/yarn.lock",
"third-party-podspecs",
"types"
],
"scripts": {
"prepack": "cp ../../README.md .",
"featureflags-check": "node ./scripts/featureflags/index.js --verify-unchanged",
"featureflags-update": "node ./scripts/featureflags/index.js"
},
"peerDependencies": {
"@types/react": "^18.2.6",
"react": "18.2.0"
},
"peerDependenciesMeta": {
"@types/react": {
"optional": true
}
},
"dependencies": {
"@jest/create-cache-key-function": "^29.6.3",
"@react-native-community/cli": "13.6.4",
"@react-native-community/cli-platform-android": "13.6.4",
"@react-native-community/cli-platform-ios": "13.6.4",
"@react-native/assets-registry": "0.74.81",
"@react-native/codegen": "0.74.81",
"@react-native/community-cli-plugin": "0.74.81",
"@react-native/gradle-plugin": "0.74.81",
"@react-native/js-polyfills": "0.74.81",
"@react-native/normalize-colors": "0.74.81",
"@react-native/virtualized-lists": "0.74.81",
"abort-controller": "^3.0.0",
"anser": "^1.4.9",
"ansi-regex": "^5.0.0",
"base64-js": "^1.5.1",
"chalk": "^4.0.0",
"event-target-shim": "^5.0.1",
"flow-enums-runtime": "^0.0.6",
"invariant": "^2.2.4",
"jest-environment-node": "^29.6.3",
"jsc-android": "^250231.0.0",
"memoize-one": "^5.0.0",
"metro-runtime": "^0.80.3",
"metro-source-map": "^0.80.3",
"mkdirp": "^0.5.1",
"nullthrows": "^1.1.1",
"pretty-format": "^26.5.2",
"promise": "^8.3.0",
"react-devtools-core": "^5.0.0",
"react-refresh": "^0.14.0",
"react-shallow-renderer": "^16.15.0",
"regenerator-runtime": "^0.13.2",
"scheduler": "0.24.0-canary-efb381bbf-20230505",
"stacktrace-parser": "^0.1.10",
"whatwg-fetch": "^3.0.0",
"ws": "^6.2.2",
"yargs": "^17.6.2"
},
"codegenConfig": {
"libraries": [
{
"name": "FBReactNativeSpec",
"type": "modules",
"ios": {},
"android": {},
"jsSrcsDir": "src"
},
{
"name": "rncore",
"type": "components",
"ios": {},
"android": {},
"jsSrcsDir": "src"
}
]
}
}