Upstream no usa ni un solo subdirectorio en src/views, src/backend, src/models, src/client/assets/styles ni translations: todo plano. La rama habia creado dos (views/fork/ y translations/fork/), que es lo que mas se separaba de su forma de organizar el codigo. Se deshacen, y los ficheros pasan a llamarse como los suyos: views/fork/hive_nav.js -> views/hive_views.js (como main_views.js) views/fork/identities.js -> views/identities_view.js (como *_view.js) translations/fork/i18n_fork.js -> translations/i18n_fork.js (junto a i18n.js) backend/fork_routes.js -> backend/karvan_routes.js (familia karvan_*) Ademas se retira una ruta duplicada: /legacy/export estaba declarada dos veces, en backend.js (la del dev) y en el fichero de rutas de la rama, con el mismo cuerpo salvo un && defensivo. Nacio cuando el formulario se paso a GET; al devolverlo a POST quedo como copia exacta. Con ella se van legacyModel y onboardingModel, que ya no hacia falta inyectar. La cabecera del fichero de rutas explica ahora por que sigue existiendo, con los datos medidos y no de memoria: backend.js concentra 625 rutas y se reescribe en cada release (+833/-286 en la 0.9.2, +266/-31 en la 0.9.1), asi que una ruta anadida en medio entra en conflicto cada vez. Quedan diez ficheros propios, todos siguiendo la convencion de upstream, y +247 lineas repartidas en 21 ficheros suyos (sin contar OasisMobile.css, que es el tema de la rama). Comprobado tras mover: arranque, las siete rutas principales, el selector de identidades con sus siete entradas y su aviso, crear sala y enviar mensaje en Karvan, y la exportacion de identidad por la ruta del dev.
20 lines
628 B
JavaScript
20 lines
628 B
JavaScript
const path = require('path');
|
|
let i18n = {};
|
|
const languages = ['en', 'es', 'fr', 'eu', 'de', 'it', 'pt', 'zh', 'ar', 'hi', 'ru'];
|
|
|
|
languages.forEach(language => {
|
|
try {
|
|
const languagePath = path.join(__dirname, `oasis_${language}.js`);
|
|
const languageData = require(languagePath);
|
|
i18n[language] = languageData[language];
|
|
} catch (error) {
|
|
console.error(`Failed to load language file for ${language}:`, error);
|
|
}
|
|
});
|
|
|
|
try {
|
|
const overlay = require('./i18n_fork.js');
|
|
languages.forEach(l => Object.assign(i18n[l] = i18n[l] || {}, overlay[l] || overlay.en || {}));
|
|
} catch (e) {}
|
|
|
|
module.exports = i18n;
|