Nap-typescript-sdk

Udviklingssetup og targets:

Installer dependencies

Installer alle dependecies ved at køre `npm i`

Build

Kør `npm run build` for at bygge projektet. Dette giver et output i dist/ folderen. 

Unit tests

For at køre unit tests med Karma kør `npm run test`. Det smider en coverage rapport i coverage/ folderen.

CI

For at bygge SDK til CI køre `npm run ci:build`.

Jenkins filen beskriver jenkins pipelinen

Linting

Kør `npm run lint` for linting.

Documentation

For at generere TsDoc køre `npm run doc`

Projektstruktur

Konteksdelingsbro

NapEvents

Nap events af hårdt inspireret af FHIR / FHIRcast (https://fhircast.org/specification/Feb2020Ballot/) og eventkataloget fungerer som versionering af disse events. 

Et anvenderprojekt definerer hvilken version af eventkataloget den implementerer. Dette fungerer som en kontrakt således, at et givent værtssytem ved at et giventprojekt kan håndtere en række events.

Skal der implementeres nye events kræver det nye releases af nap-typescript-sdket.

FhirValueGetter

Der er defineret fhir-value-getter NameSpace til utility funktioner til mappe NapMessages.

Mapping funktioner

FunktionsnavnBeskrivelse
getSessionValue()Trækker SAMLassertion ud af et SessionOpenEvent
getPationInfoTrækker familyName, givenName og ssNo ud af et PatientOpenEvent


FhirValueSetter

Der er defineret fhir-value-setter NameSpace til enums af typiske værdier, der skal sættes i for NapMessages.

Mapping funktioner

TypeBeskrivelse
FHIRResourceTypeResource typen for event ('Patient' | 'Basic')
FHIRSystemSystem identifier ('nap')
FHIRIdentifierSystemSystem identifier til cpr, errorMessage og errorDescription


Nap-angular-sdk

Indeholder 3 "projekter".

  1. Et angular workspace i src-folderen.
    1. Her ligger en DEV.README, specifikt egnet til udviklere, som beskriver de npm targets der opsat i projektet.
  2. Det egentlige nap-angular-sdk i projecs/nap-angular
    1. ng-package.json definerer de filer der skal pakkes og publishes
  3. En test implementering, som motionerer nap-angular-sdk i projects/test. Heri er injected en fakebridge i index.html.


Nap-react-sdk

Indeholder 2 "projekter".

  1. Det egentligt nap-react-sdk i src
    1. Her ligger en DEV.README i projektets rodfolder, specifikt egnet til udviklere, som beskriver de npm targets der opsat i projektet.
    2. Npm package mangeren bruger .npmignore til at ignore visse filer så som node_modules og example, når pakken skal bundles og publishes
  2. Et eksempel implementering, som motionerer nap-react-sdk i example/src. Heri er injected en fakebridge i index.html.