Files
TREK/client/src/components/Settings/useNativeServer.ts
T
Maurice 8b6a65023f Merge dev into feat/native-apps
Brings the native apps branch up to dev (NestJS-only server, MikroORM
repositories, tracked sessions, per-domain locales, the lint ratchets) and
ports its new code onto that architecture:

- server: /api/auth/native moves onto injected services. The session is
  minted by the auth domain's new LoginSessionService (login bookkeeping and
  SessionsService.issue in one transaction), the one-time codes live behind a
  NativeHandoffStore port with a capped in-memory implementation that drops
  expired codes on write instead of running a timer, both routes declare
  response contracts, and the exchange answers { success: true }. Unit and
  e2e suites run on createTestModule and the ORM factories.
- shared: native strings for az, et, sk and th, native wired into every
  locale, the address placeholder as a full URL.
- client: the account and export changes go into dev's shared hooks
  (useAccountSettings, useTripExport), the native server card is a
  desktop/phone pair on useNativeServer, the hand-off call moves out of the
  page hook into native/, best-effort native failures go through
  reportError instead of the console, and the address screen is known to
  knip and lint:i18n-keys.
- package-lock.json regenerated on Linux.
2026-10-25 17:04:15 +01:00

17 lines
533 B
TypeScript

import { nativeServerHost } from '../../native/platform';
import { TrekShell } from '../../native/trekShell';
/**
* The server section both settings views show inside the iOS and Android app:
* the host the app is connected to (null in a browser, where the section stays
* hidden) and the way back to the address screen.
*/
export function useNativeServer(): { host: string | null; changeServer: () => void } {
return {
host: nativeServerHost(),
changeServer: () => {
void TrekShell.resetServer();
},
};
}