- 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
92 lines
2.9 KiB
TypeScript
92 lines
2.9 KiB
TypeScript
import { Maybe } from '../jsutils/Maybe';
|
|
|
|
import { ASTNode } from '../language/ast';
|
|
import { Source } from '../language/source';
|
|
import { SourceLocation } from '../language/location';
|
|
|
|
/**
|
|
* Custom extensions
|
|
*
|
|
* @remarks
|
|
* Use a unique identifier name for your extension, for example the name of
|
|
* your library or project. Do not use a shortened identifier as this increases
|
|
* the risk of conflicts. We recommend you add at most one extension field,
|
|
* an object which can contain all the values you need.
|
|
*/
|
|
export interface GraphQLErrorExtensions {
|
|
[attributeName: string]: any;
|
|
}
|
|
|
|
/**
|
|
* A GraphQLError describes an Error found during the parse, validate, or
|
|
* execute phases of performing a GraphQL operation. In addition to a message
|
|
* and stack trace, it also includes information about the locations in a
|
|
* GraphQL document and/or execution result that correspond to the Error.
|
|
*/
|
|
export class GraphQLError extends Error {
|
|
constructor(
|
|
message: string,
|
|
nodes?: Maybe<ReadonlyArray<ASTNode> | ASTNode>,
|
|
source?: Maybe<Source>,
|
|
positions?: Maybe<ReadonlyArray<number>>,
|
|
path?: Maybe<ReadonlyArray<string | number>>,
|
|
originalError?: Maybe<Error>,
|
|
extensions?: Maybe<GraphQLErrorExtensions>,
|
|
);
|
|
|
|
/**
|
|
* An array of { line, column } locations within the source GraphQL document
|
|
* which correspond to this error.
|
|
*
|
|
* Errors during validation often contain multiple locations, for example to
|
|
* point out two things with the same name. Errors during execution include a
|
|
* single location, the field which produced the error.
|
|
*
|
|
* Enumerable, and appears in the result of JSON.stringify().
|
|
*/
|
|
readonly locations: ReadonlyArray<SourceLocation> | undefined;
|
|
|
|
/**
|
|
* An array describing the JSON-path into the execution response which
|
|
* corresponds to this error. Only included for errors during execution.
|
|
*
|
|
* Enumerable, and appears in the result of JSON.stringify().
|
|
*/
|
|
readonly path: ReadonlyArray<string | number> | undefined;
|
|
|
|
/**
|
|
* An array of GraphQL AST Nodes corresponding to this error.
|
|
*/
|
|
readonly nodes: ReadonlyArray<ASTNode> | undefined;
|
|
|
|
/**
|
|
* The source GraphQL document corresponding to this error.
|
|
*
|
|
* Note that if this Error represents more than one node, the source may not
|
|
* represent nodes after the first node.
|
|
*/
|
|
readonly source: Source | undefined;
|
|
|
|
/**
|
|
* An array of character offsets within the source GraphQL document
|
|
* which correspond to this error.
|
|
*/
|
|
readonly positions: ReadonlyArray<number> | undefined;
|
|
|
|
/**
|
|
* The original error thrown from a field resolver during execution.
|
|
*/
|
|
readonly originalError: Error | undefined | null;
|
|
|
|
/**
|
|
* Extension fields to add to the formatted error.
|
|
*/
|
|
readonly extensions: { [key: string]: any };
|
|
}
|
|
|
|
/**
|
|
* Prints a GraphQLError to a string, representing useful location information
|
|
* about the error's position in the source.
|
|
*/
|
|
export function printError(error: GraphQLError): string;
|