- 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
83 lines
2.3 KiB
JavaScript
83 lines
2.3 KiB
JavaScript
"use strict";
|
|
|
|
Object.defineProperty(exports, "__esModule", {
|
|
value: true
|
|
});
|
|
exports.getPrebuildConfigAsync = getPrebuildConfigAsync;
|
|
function _config() {
|
|
const data = require("@expo/config");
|
|
_config = function () {
|
|
return data;
|
|
};
|
|
return data;
|
|
}
|
|
function _getAutolinkedPackages() {
|
|
const data = require("./getAutolinkedPackages");
|
|
_getAutolinkedPackages = function () {
|
|
return data;
|
|
};
|
|
return data;
|
|
}
|
|
function _withDefaultPlugins() {
|
|
const data = require("./plugins/withDefaultPlugins");
|
|
_withDefaultPlugins = function () {
|
|
return data;
|
|
};
|
|
return data;
|
|
}
|
|
async function getPrebuildConfigAsync(projectRoot, props) {
|
|
const autolinkedModules = await (0, _getAutolinkedPackages().getAutolinkedPackagesAsync)(projectRoot, props.platforms);
|
|
return getPrebuildConfig(projectRoot, {
|
|
...props,
|
|
autolinkedModules
|
|
});
|
|
}
|
|
function getPrebuildConfig(projectRoot, {
|
|
platforms,
|
|
bundleIdentifier,
|
|
packageName,
|
|
autolinkedModules
|
|
}) {
|
|
// let config: ExpoConfig;
|
|
let {
|
|
exp: config,
|
|
...rest
|
|
} = (0, _config().getConfig)(projectRoot, {
|
|
skipSDKVersionRequirement: true,
|
|
isModdedConfig: true
|
|
});
|
|
if (autolinkedModules) {
|
|
if (!config._internal) {
|
|
config._internal = {};
|
|
}
|
|
config._internal.autolinkedModules = autolinkedModules;
|
|
}
|
|
|
|
// Add all built-in plugins first because they should take
|
|
// priority over the unversioned plugins.
|
|
config = (0, _withDefaultPlugins().withVersionedExpoSDKPlugins)(config);
|
|
config = (0, _withDefaultPlugins().withLegacyExpoPlugins)(config);
|
|
if (platforms.includes('ios')) {
|
|
if (!config.ios) config.ios = {};
|
|
config.ios.bundleIdentifier = bundleIdentifier ?? config.ios.bundleIdentifier ?? `com.placeholder.appid`;
|
|
|
|
// Add all built-in plugins
|
|
config = (0, _withDefaultPlugins().withIosExpoPlugins)(config, {
|
|
bundleIdentifier: config.ios.bundleIdentifier
|
|
});
|
|
}
|
|
if (platforms.includes('android')) {
|
|
if (!config.android) config.android = {};
|
|
config.android.package = packageName ?? config.android.package ?? `com.placeholder.appid`;
|
|
|
|
// Add all built-in plugins
|
|
config = (0, _withDefaultPlugins().withAndroidExpoPlugins)(config, {
|
|
package: config.android.package
|
|
});
|
|
}
|
|
return {
|
|
exp: config,
|
|
...rest
|
|
};
|
|
}
|
|
//# sourceMappingURL=getPrebuildConfig.js.map
|