OpenSCD add-ons are add functionality to extend the core functionality. It allows to experiment (with out commit it directly to the core) and add functionality for just a small group of users. Once an add-on is used a lot and is considered stable, it can become a part of the core functionality.
With the transtion to OpenSCD next architecture some mixins are nog loger needed compared to OpenSCD monolith architecture:
Hosting => This is solved in OpenSCD-Core.
Editing => This is solved in OpenSCD-Core. Without editing, the app gets useless.
Plugging => This is solved in OpenSCD-Core. Without plug-ins, the app gets useless.
The new setup
Setting addon
Takes care of user specific settings. The settings are stored in the local browser cache.
Examples inlcudes: NSD files, NSdoc.
Wizarding addon
The wizarding Addon takes care of displaying a single wizard in the workflow. The OpenSCD monolith architecture only supports opening 1 wizard. With this component it is possible to open multiple wizards in the same time.
Waiting addon
The waiting Addon is responsible for adding progress-like waiting elements to OpenSCD.
This gives the user feedback and disables other functionality while the system is busy.
Logging addon
The logging Addon is responsible for keeping tack of log statements in OpenSCD.
Example here include the logging editing actions, errors, warnings and information.
Theming addon
Loads the theming; provides an API for a Theming plug-in. Examples here include the colors and icons.
CoMPAS specific add-ons
Since CoMPAS has backend services, it can require more addons;
Elastic addon
The Elastic Addon is responsible for sending Log statements and monitoring to the Elastic stack
Single sign-on addon
The SSO Addon is responsible for Authentication via SSO for CoMPAS.