- 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
40 lines
1.7 KiB
TypeScript
40 lines
1.7 KiB
TypeScript
import { ExpoPushToken, ExpoPushTokenOptions } from './Tokens.types';
|
|
/**
|
|
* Returns an Expo token that can be used to send a push notification to the device using Expo's push notifications service.
|
|
*
|
|
* This method makes requests to the Expo's servers. It can get rejected in cases where the request itself fails
|
|
* (for example, due to the device being offline, experiencing a network timeout, or other HTTPS request failures).
|
|
* To provide offline support to your users, you should `try/catch` this method and implement retry logic to attempt
|
|
* to get the push token later, once the device is back online.
|
|
*
|
|
* > For Expo's backend to be able to send notifications to your app, you will need to provide it with push notification keys.
|
|
* For more information, see [credentials](/push-notifications/push-notifications-setup/#get-credentials-for-development-builds) in the push notifications setup.
|
|
*
|
|
* @param options Object allowing you to pass in push notification configuration.
|
|
* @return Returns a `Promise` that resolves to an object representing acquired push token.
|
|
* @header fetch
|
|
*
|
|
* @example
|
|
* ```ts
|
|
* import * as Notifications from 'expo-notifications';
|
|
*
|
|
* export async function registerForPushNotificationsAsync(userId: string) {
|
|
* const expoPushToken = await Notifications.getExpoPushTokenAsync({
|
|
* projectId: 'your-project-id',
|
|
* });
|
|
*
|
|
* await fetch('https://example.com/', {
|
|
* method: 'POST',
|
|
* headers: {
|
|
* 'Content-Type': 'application/json',
|
|
* },
|
|
* body: JSON.stringify({
|
|
* userId,
|
|
* expoPushToken,
|
|
* }),
|
|
* });
|
|
* }
|
|
* ```
|
|
*/
|
|
export default function getExpoPushTokenAsync(options?: ExpoPushTokenOptions): Promise<ExpoPushToken>;
|
|
//# sourceMappingURL=getExpoPushTokenAsync.d.ts.map
|