Nodefony 10.0.0-beta.5
Framework Node.js fullstack — HTTP & WebSocket, même contexte

Référence d'API — nodefony/angular

stable

Documentation › Référence d’API › nodefony › angular

Générée depuis les déclarations de types publiées de nodefony 10.0.0-beta.5 : exactement ce que reçoit une application qui l’installe. Cette page n’existe dans aucun dépôt — pour la corriger, on corrige le TSDoc du code.

nodefony/angular#

import { … } from "nodefony/angular" — 50 symboles.

Classes (1)#

NodefonyLogin#

class NodefonyLogin

Le déroulé de connexion côté navigateur : une machine à états PURE, sans DOM ni framework d’affichage, branchée sur les routes de session du framework. Le pendant de NodefonySocket et de NodefonySse pour l’authentification.

Fonctions (21)#

injectNodefony#

function injectNodefony(): NodefonySocket

injectNodefony() — la socket brute (canaux, journal, statistiques…). Tête de gondole et échappatoire pour les cas avancés ; pour de l’état réactif, prendre les fonctions dédiées ci-dessous.

injectNodefonyAdaptiveChannel#

function injectNodefonyAdaptiveChannel(base: Source<string>, onMessage: (payload: unknown) => void, desiredMs: Source<number>, options?: AdaptiveChannelOptions): Signal<number>

injectNodefonyAdaptiveChannel() — comme injectNodefonyChannel, mais en cadence adaptative (AIMD piloté par le client) : la cadence recule sous famine puis remonte quand c’est sain, sans rien changer au serveur. Renvoie la cadence effective, à afficher.

injectNodefonyAdaptiveChannelData#

function injectNodefonyAdaptiveChannelData<T = unknown>(base: Source<string>, desiredMs: Source<number>, options?: AdaptiveChannelOptions): AdaptiveChannelData<T>

injectNodefonyAdaptiveChannelData() — comme injectNodefonyChannelData, mais en cadence adaptative. Mince surcouche de injectNodefonyAdaptiveChannel : garde la dernière valeur et rend la cadence effective. Réservé aux canaux d’ÉTAT.

injectNodefonyChannel#

function injectNodefonyChannel(channel: Source<string>, onMessage: (payload: unknown) => void): void

injectNodefonyChannel() — s’abonne à un canal pub/sub : onMessage est appelé à chaque message. Le socle apparie subscribe/unsubscribe côté serveur (ref-comptés) et rejoue l’abonnement à chaque reconnexion.

injectNodefonyChannelData#

function injectNodefonyChannelData<T = unknown>(channel: Source<string>, initial?: T | null): Signal<T | null>

injectNodefonyChannelData() — la dernière valeur reçue sur un canal (le cas le plus courant : la dernière mesure d’un flux d’état). null tant que rien n’est arrivé.

injectNodefonyChannelStats#

function injectNodefonyChannelStats(channel: Source<string>): Signal<ChannelStatsSnapshot | null>

injectNodefonyChannelStats() — statistiques vivantes d’un canal (débit, série pour un VU-mètre, total). La source est l’échantillonneur du client (1×/s) : aucune horloge n’est posée ici, et aucune trame n’est émise pour mesurer.

injectNodefonyIdentity#

function injectNodefonyIdentity(): Signal<RealtimeIdentity | null>

injectNodefonyIdentity() — l’identité résolue de la connexion, annoncée par le serveur au realtime:welcome (authenticated, roles, userIdentifier, scopes). null tant qu’aucun welcome n’est arrivé ; une fois reçu, un visiteur anonyme a authenticated: false. Brique du gating front : authenticated: false → écran de connexion, sans appeler /auth/me.

injectNodefonyKernel#

function injectNodefonyKernel(): INodefonyKernel | null

injectNodefonyKernel() — le noyau client fourni à provideNodefony ({ kernel }), ou null quand l’application n’en compose pas. Référence brute ; pour l’état réactif, prendre injectNodefonyKernelState et injectNodefonyKernelIdentity.

injectNodefonyKernelIdentity#

function injectNodefonyKernelIdentity(): Signal<NodefonyKernelIdentity | null>

injectNodefonyKernelIdentity() — l’identité DÉCLARÉE au noyau par l’application (setIdentity), ou null hors session ou sans noyau fourni. Suit les changements de COMPTE — un profil rafraîchi à clé inchangée ne réveille personne (règle d’identité du noyau).

injectNodefonyKernelState#

function injectNodefonyKernelState(): Signal<NodefonyKernelState | null>

injectNodefonyKernelState() — l’état du noyau (created → booting → ready → terminated), ou null sans noyau fourni.

injectNodefonyLogin#

function injectNodefonyLogin(options?: NodefonyLoginOptions): NodefonyLoginBinding

injectNodefonyLogin() — le déroulé de connexion du framework, relayé en signal. Le balisage reste entièrement à l’application ; les règles vivent dans NodefonyLogin (nodefony/client), jamais ici.

injectNodefonyNoticeLog#

function injectNodefonyNoticeLog(options?: Source<InjectNoticeLogOptions>): Signal<NodefonyNotice[]>

injectNodefonyNoticeLog() — l’anneau borné des dernières notices, filtrable par source : un historique léger des criticités, distinct des notifications éphémères. La taille de l’anneau et le filtrage viennent du socle (observeNoticeLog).

injectNodefonyNotifications#

function injectNodefonyNotifications(onNotice: (notice: NodefonyNotice) => void): void

injectNodefonyNotifications() — le flux des notices normalisées du client : criticités qui cassent le temps réel (codes de fermeture RFC 6455 interprétés), erreurs poussées par le serveur, rétablissement de connexion. onNotice est appelé pour CHAQUE notice → brancher un centre de notifications.

injectNodefonySnapshot#

function injectNodefonySnapshot(): Signal<SocketSnapshot | null>

injectNodefonySnapshot() — ce que la socket sait d’ELLE-MÊME : état, canaux tenus, trames reçues, trames perdues, dernière trame. Rafraîchi par l’échantillonneur déjà en place — aucune horloge de plus.

injectNodefonySse#

function injectNodefonySse(url: Source<string | null>, options?: ObserveSseOptions): Signal<SseSnapshot>

injectNodefonySse() — ouvre un flux SSE, rend son état (readyState, dernier événement, erreur) en signal, et le FERME à la destruction du contexte d’injection (composant ou service).

injectNodefonyState#

function injectNodefonyState(): Signal<RealtimeState>

injectNodefonyState() — l’état de la connexion ("connected", "reconnecting", …), tenu à jour. Branché sur la porte publique onState, jamais sur le nom de l’événement local, qui n’a pas à sortir du client.

injectNodefonySyslog#

function injectNodefonySyslog(options?: Source<InjectSyslogOptions>): Signal<unknown[]>

injectNodefonySyslog() — le flux du journal, prêt à afficher : anneau borné et filtre de sévérité. Le format coalescé du canal ({ logs, dropped }), l’entrée unique, la taille de l’anneau et le canal par défaut viennent du socle (observeSyslog) : cette fonction n’en connaît aucun.

isRateChannel#

function isRateChannel(channel: string, base: string): boolean

Vrai si channel est le canal de base nu OU une de ses variantes cadencées base:<ms>.

parseRate#

function parseRate(channel: string, base: string, bounds: RateBounds): number

Résout la cadence (ms) d’un canal cadencé connu, côté serveur. Le serveur connaît la base qu’il vient de matcher ; ce helper en extrait le suffixe :<ms>, borne dans bounds et retombe sur bounds.default pour le canal de base nu ou un suffixe invalide.

provideNodefony#

function provideNodefony(options: NodefonyAngularOptions): EnvironmentProviders

Le fournisseur — à poser une fois, dans les providers de l’application.

rateChannel#

function rateChannel(base: string, intervalMs?: number, defaultMs?: number): string

Construit le nom d’un canal cadencé à partir de sa base et de la cadence demandée.

Constantes (2)#

NODEFONY_CLIENT#

const NODEFONY_CLIENT: InjectionToken<NodefonySocket<import("../../realtime/RealtimeEventMap").DefaultEventsMap, import("../../realtime/RealtimeEventMap").DefaultEventsMap, import("../../realtime/RealtimeEventMap").DefaultActionsMap>>

Le jeton sous lequel provideNodefony enregistre la socket.

NODEFONY_KERNEL#

const NODEFONY_KERNEL: InjectionToken<INodefonyKernel>

Le jeton sous lequel provideNodefony enregistre le noyau client, quand l’application en compose un. Absent → injectNodefonyKernel rend null.

Interfaces (19)#

AdaptiveChannelData#

interface AdaptiveChannelData<T>

Résultat de injectNodefonyAdaptiveChannelData : valeur + cadence réelle.

INodefonyKernel#

interface INodefonyKernel

Contrat du kernel client isomorphe (ADR-0007 D2 — surface v1, volontairement minimale : chaque méthode publiée est une promesse SemVer).

ISseEvent#

interface ISseEvent

Un événement reçu, une fois sa ligne vide atteinte (WHATWG §9.2.6).

InjectNoticeLogOptions#

interface InjectNoticeLogOptions

Réglages de injectNodefonyNoticeLog.

InjectSyslogOptions#

interface InjectSyslogOptions

Réglages de injectNodefonySyslog.

NodefonyAngularOptions#

interface NodefonyAngularOptions

Réglages de provideNodefony — l’un des trois au moins doit être donné.

NodefonyKernelIdentity#

interface NodefonyKernelIdentity

Identité runtime déclarée par l’application au kernel.

NodefonyLoginBinding#

interface NodefonyLoginBinding

Ce que rend injectNodefonyLogin : l’état en signal, et le déroulé qui porte les actions.

NodefonyLoginError#

interface NodefonyLoginError

Échec classé de la dernière action.

NodefonyLoginOptions#

interface NodefonyLoginOptions

Réglages de NodefonyLogin — tous facultatifs.

NodefonyLoginProvider#

interface NodefonyLoginProvider

Fournisseur de connexion, tel que le SERVEUR le présente.

NodefonyLoginState#

interface NodefonyLoginState

Photographie du déroulé — un objet NEUF à chaque changement, jamais muté.

NodefonyLoginUser#

interface NodefonyLoginUser

Identité rendue par le serveur une fois la session ouverte.

NodefonyNotice#

interface NodefonyNotice

Notice normalisée prête à afficher (snackbar / centre de notifications).

ObserveSseOptions#

interface ObserveSseOptions extends NodefonySseOptions

Réglages de observeSse : ceux de NodefonySse, plus deux.

RateBounds#

interface RateBounds

Bornes de cadence d’un canal cadencé (toutes en millisecondes).

RealtimeIdentity#

interface RealtimeIdentity

Identité d’une connexion temps réel, telle que résolue par le serveur au handshake (token neutre IRealtimeToken côté back) et annoncée au client dans la notification système realtime:welcome.

SocketSnapshot#

interface SocketSnapshot

Ce que le client sait de sa PROPRE socket, à un instant donné.

SseSnapshot#

interface SseSnapshot

L’état d’un flux observé — ce qu’une vue affiche.

Types (7)#

AdaptiveChannelOptions#

type AdaptiveChannelOptions = Omit<BindAdaptiveOptions, "intervalMs" | "onRate">

Réglages adaptatifs (la cadence désirée se passe à part, en argument).

ChannelStatsSnapshot#

type ChannelStatsSnapshot = MessageStats

Statistiques observées d’un canal, telles que le client les calcule.

LoginErrorKind#

type LoginErrorKind = "credentials" | "throttled" | "network" | "server" | "cancelled" | "unsupported"

Nature d’un échec, classée pour que l’écran sache QUOI dire.

LoginStep#

type LoginStep = "identifier" | "password" | "mfa" | "authenticated"

Étape du déroulé de connexion.

NodefonyKernelState#

type NodefonyKernelState = "created" | "booting" | "ready" | "terminated"

États du kernel client, ordonnés et non régressifs (symétrie nominale avec les lifecycle flags du Kernel serveur — booted/ready/… — sans en singer la sémantique process).

RealtimeState#

type RealtimeState = "disconnected" | "connecting" | "connected" | "reconnecting" | "error"

Source#

type Source<T> = T | () => T

Une source de valeur : constante, ou fonction qui la lit (un Signal en est un cas — un signal EST une fonction sans argument).


← Toutes les références d’API