Here we discuss the software components developed for the openIDL system.
User Interface Components
openIDL Common Lib
folder: openidl-common-lib
This is a common component used by other components.
Dependencies
@openidl-org/openidl-common-lib@0.5.8
├── @cloudant/cloudant@4.2.1
├── @ibm-functions/iam-token-manager@1.0.5
├── @sendgrid/mail@7.4.5
├── fabric-ca-client@2.2.9
├── fabric-network@2.2.9
├── ibmcloud-appid@6.1.1
├── log4js@4.3.2
├── mongodb@3.7.2
├── node-vault@0.9.22
├── passport@0.4.1
├── passport-cognito@0.2.2
├── request-promise@4.2.6
└── safe-eval@0.4.1
openIDL Data Call App
folder: openidl-data-call-app
This component serves as the api for the data call ui.
Dependencies
app@1.0.1
├── @openidl-org/openidl-common-lib@0.5.8
├── @sendgrid/mail@7.4.7
├── body-parser@1.19.0
├── config@2.0.2
├── cookie-parser@1.4.5
├── cors@2.8.5
├── express@4.17.1
├── express-session@1.17.2
├── helmet@3.21.2
├── http-errors@1.6.3
├── js-yaml@3.14.1
├── lodash@4.17.21
├── log4js@4.5.1
├── moment@2.29.1
├── node-fetch@2.6.5
├── swagger-ui-express@3.0.10
└── uuid@3.4.0
openIDL Data Call Mood Listener
folder: openidl-data-call-mood-listener
This component listens for events on the ledger.
Dependencies
openidl-data-call-mood-listener@1.0.1
├── @openidl-org/openidl-common-lib@0.5.8
├── @sendgrid/mail@7.4.5
├── config@2.0.2
├── express@4.16.4
├── log4js@4.5.1
├── sinon@7.5.0
└── uuid@3.4.0
openIDL Data Call Processor
folder: openidl-data-call-processor
This component listens for the consent event and runs the extraction pattern.
Dependencies
openidl-data-call-processor@1.0.1
├── @cloudant/cloudant@3.0.2
├── @openidl-org/openidl-common-lib@0.5.8
├── @sendgrid/mail@7.4.6
├── aws-sdk@2.474.0
├── config@2.0.2
├── cron@1.8.2
├── express@4.16.4
├── log4js@4.5.1
├── moment@2.29.1
├── mongodb@3.6.11
├── object-sizeof@1.6.1
├── sleep@6.3.0
└── uuid@3.4.0
openIDL Data Call Processor
folder: openidl-data-call-processor
This component listens for the consent event and runs the extraction pattern.
Dependencies
openidl-data-call-processor@1.0.1
├── @cloudant/cloudant@3.0.2
├── @openidl-org/openidl-common-lib@0.5.8
├── @sendgrid/mail@7.4.6
├── aws-sdk@2.474.0
├── config@2.0.2
├── cron@1.8.2
├── express@4.16.4
├── log4js@4.5.1
├── moment@2.29.1
├── mongodb@3.6.11
├── object-sizeof@1.6.1
├── sleep@6.3.0
└── uuid@3.4.0
openIDL Insurance Data Manager
folder: openidl-insurance-data-manager
This component provides an API to load data into the Harmonized Data Store.
Dependencies
app@1.0.1
├── @openidl-org/openidl-common-lib@0.5.8
├── @sendgrid/mail@7.4.6
├── body-parser@1.19.0
├── config@2.0.2
├── cookie-parser@1.4.5
├── cors@2.8.5
├── crypto@1.0.1
├── express@4.16.4
├── express-session@1.17.2
├── helmet@3.21.2
├── http-errors@1.6.3
├── js-yaml@3.14.1
├── log4js@4.5.1
├── node-fetch@2.6.1
├── sort-json-array@0.1.7
├── swagger-ui-express@3.0.10
└── uuid@3.4.0
openIDL Transactional Data Event Listener
folder: openidl-transactional-data-event-listener
This component listens for data arriving on the analytics node and starts the reporting process.
Dependencies
transactional-data-event-listener@1.0.1
├── @cloudant/cloudant@3.0.2
├── @openidl-org/openidl-common-lib@0.5.8
├── @sendgrid/mail@7.4.6
├── aws-sdk@2.474.0
├── config@2.0.2
├── express@4.16.4
├── log4js@4.5.1
├── mongodb@3.6.11
└── object-sizeof@1.4.0
openIDL UI
This component provides access to the system for the AAIS and Analytics nodes.
openIDL Carrier UI
This component provides access to the system for the Carrier nodes.
Dependencies
Dependency | Description | Discussion |
---|---|---|
angular | UI Framework | |
config | Configuration control for production node deployments | |
cookie-parser | Parse Cookie header and populate req.cookies with an object keyed by the cookie names. Optionally you may enable signed cookie support by passing a secret string, which assigns req.secret so it may be used by other middleware. | |
cors | Node.js CORS middleware | |
express | Fast, unopinionated, minimalist web framework | |
express-session | Simple session middleware for Express | |
helmet | Helmet helps you secure your Express apps by setting various HTTP headers. It's not a silver bullet, but it can help! | |
ibmcloud-appid | Node.js SDK for the IBM Cloud App ID service | |
log4js | This is a conversion of the log4js framework to work with node. | |
moment | A JavaScript date library for parsing, validating, manipulating, and formatting dates. | |
nconf | Hierarchical node.js configuration with files, environment variables, command-line arguments, and atomic object merging. | |
ngx-xac | Helper library for create CSV file in Angular2+ | |
nocache | This Express middleware sets some HTTP response headers to try to disable client-side caching. | |
node-fetch | Instead of implementing XMLHttpRequest in Node.js to run browser-specific Fetch polyfill, why not go from native http to fetch API directly? Hence, node-fetch , minimal code for a window.fetch compatible API on Node.js runtime. | |
passport | Passport is Express-compatible authentication middleware for Node.js. | |
request-promise | The simplified HTTP request client 'request' with Promise support. Powered by Bluebird. | Deprecated! We need to replace this. |
rxjs | Reactive Extensions Library for JavaScript. | |
tslib | Runtime library for TypeScript helper functions | |
zonwe.js | Implements Zones for JavaScript, inspired by Dart. |