Overordnet struktur

Den basale logik ligger i nap-typescript-sdk, hvorfor denne implementeres i både nap-angular-sdk og nap-react-sdk.

Nap-typescript-sdk

Initialisering af Konteksdelingsbro

 Nap-typescript-sdk sørger for at hente den bridge, som et anvendersystem (et vilkårligt lægepraksis system) har injected på global scope som illustreret i komponent diagrammet nedenfor:

Den bruger denne bridge til at lave message streams for indkommende og udgående beskeder.

Eventkatalog

Nap-typescript-sdk indeholder eventkataloget, der danner grundlag for alle nap-events og information der kan flyde indefra og ud eller udefra og ind. Dette eventkatalog lægger sig op af FHIR / FHIRcast (https://fhircast.org/specification/Feb2020Ballot/) med de aspekter der var oplagte. 

Det betyder at eventkatalog version 1 implementerer webAppOpen, patient-open, patient-close, session-open, session-close og session-error og eventContext følger FHIR strukturen som f.eks. https://build.fhir.org/ig/hl7dk/dk-core/ og  https://www.hl7.org/fhir/valueset-basic-resource-type.html.

Der er ikke implementeret aspekter af FHIRcast der omhandler, session discovery, security, subscription, unsubscription eller event notification response.

Eventkatalog version 1

EventTypeFunktionelle beskrivelse
WebAppOpenSpecifikt event til når en webapplikation klikkes i lobbyen
SessionOpenStart en trusted session hvor brugerens SAMLassertion overføres.
SessionCloseHvis en bruger ønskes lukkes ud. Alt state skal slettes på web-applikationen
PatientOpenDen brugervalgte patient journal.
PatientCloseDen brugervalgte patient journal lukkes.
SessionErrorHvis der sker en uventet fejl i gæstesystemet skal dette sendes til værtssystemet og vice versa.

Utility funktioner

Fhir-value-getter utility funktioner til mappe NapMessages.

Fhir-value-setter utility funktioner til at sette konstante FHIR værdier for NapMessages.

Nap-angular-sdk

Skal udstille en service som sørger for, at de asynkrone operationer i nap-typescript-sdk bliver kørt i NgZone, som er Angulars change detection zone for asynkrone værdier. Således sker initialisering af kontektsbroen som en singleton vha. Angular dependency injection og DOM vil blive opdateret hvis observables emitter nye værdier.

Nap-react-sdk

Skal udstille en context provider følgende Reacts context pattern således at initialiasering af konteksbroen sker som en singleton samt at child-components kan dele data.