new base npis-docs
2853
docs/project-requirements/SRS.md
Executable file
181
docs/project-requirements/ToR.md
Executable file
3
docs/project-requirements/_category_.json
Normal file
@@ -0,0 +1,3 @@
|
||||
{
|
||||
"label": "System Requirements"
|
||||
}
|
||||
8
docs/user-guide/_category_.json
Normal file
@@ -0,0 +1,8 @@
|
||||
{
|
||||
"label": "System Guides",
|
||||
"position": 1,
|
||||
"link": {
|
||||
"type": "generated-index",
|
||||
"description": "10 minutes to familiarise with system guiges."
|
||||
}
|
||||
}
|
||||
31
docs/user-guide/admin/admin-console/admin-console-login.mdx
Normal file
@@ -0,0 +1,31 @@
|
||||
---
|
||||
sidebar_position: 1
|
||||
sidebar_label: 'admin console login'
|
||||
---
|
||||
|
||||
# Admin Console
|
||||
Its users granted with the superuser admin role(those within the admin user group) who interact with the NPIS-IAM's backend configuration interface called the **admin console**. It is preconfigured with an admin account out of the box. This account will allow you to create an admin that can log into the master realm’s administration console so that admin can start creating realms, users and register applications to be secured by NPIS-IAM.
|
||||
|
||||
## Video Tutorial
|
||||
import videojs from 'video.js';
|
||||
|
||||
<video id="my-video" class="vjs-fill vjs-default-skin" controls preload="auto" width="100%" height="100%" poster="/img/user-guide/login.png" >
|
||||
<source src="/videos/user-guide/admin/admin-login.webm" type="video/webm"/>
|
||||
</video>
|
||||
|
||||
## Reference instructions
|
||||
Please follow the instructions below:
|
||||
|
||||
### login
|
||||
The NPIS server is accessible at **npis.go.ug**, and the admin user accesses the admin console at the http://npis.go.ug:8080/auth/ URL or directly to the login http://npis.go.ug:8080/auth/admin URL.
|
||||
|
||||

|
||||
|
||||
Click the **administration console** link on the Welcome Page and enter the **username** and **password**.
|
||||
|
||||

|
||||
|
||||
The left drop down menu allows the admin to pick a realm they would want to manage or to create a new one. The right drop down menu allows the admin to view admin user account or logout. Simply hovering the mouse over any question mark ? icon reveals about a certain feature, button, or field within the Admin Console, This will pop up tooltip text to describe the area of the console interested in. The image below shows the tooltip in action
|
||||

|
||||
|
||||
|
||||
38
docs/user-guide/admin/admin-console/create-realm.mdx
Normal file
@@ -0,0 +1,38 @@
|
||||
---
|
||||
sidebar_position: 1
|
||||
sidebar_label: 'create realm'
|
||||
---
|
||||
|
||||
# Realms
|
||||
The core concept in NPIS-IAM is a Realm. A realm secures and manages security metadata for a set of users and registered clients. Users can be created within a specific realm within the Administration console. Roles (permission types) can be defined at the realm level and the admin can also set up user role mappings to assign these permissions to specific users.
|
||||
|
||||
## Video Tutorial
|
||||
import videojs from 'video.js';
|
||||
|
||||
<video id="my-video" class="vjs-fill vjs-default-skin" controls preload="auto" width="100%" height="100%" poster="/img/user-guide/create-realm.png" >
|
||||
<source src="/videos/user-guide/admin/admin-login.webm" type="video/webm"/>
|
||||
</video>
|
||||
|
||||
## Reference instructions
|
||||
Please follow the instructions below:
|
||||
|
||||
### The Master Realm
|
||||
|
||||
NPIS_IAM is preconfigured with a pre-defined realm. This initial realm is the **master realm**. It is the highest level in the hierarchy of realms. Admin accounts in this realm have permissions to view and manage any other realm created. The initial admin account, is created in the master realm. Also, the initial login to the admin console will also be via the master realm.
|
||||
|
||||
The master realm isn't to be used to manage the users and applications in NPIS. It is reserved to be used for super admins to create and manage the realms in NPIS. Following this security model helps prevent accidental changes and follows the tradition of permitting user accounts access to only those privileges and powers necessary for the successful completion of their current task.
|
||||
|
||||
<!-- It is possible to disable the master realm and define admin accounts within each individual new realm you create. Each realm has its own dedicated Admin Console that you can log into with local accounts. -->
|
||||
|
||||

|
||||
|
||||
The left drop down menu allows the admin to pick a realm they would want to manage or to create a new one.
|
||||
Creating a new realm is very simple. Mouse over the top left corner drop down menu that is titled with Master. If you are logged in the master realm this drop down menu lists all the realms created. The last entry of this drop down menu is always Add Realm. Click this to add a realm.
|
||||
|
||||

|
||||
This menu option will bring you to the `Add Realm` page. Adding a new NPIS realm requires the admin to fill a mandatory name field, checking an option enable button which straight away enables the realm, click the `Create` button. Alternatively you can import a JSON document that defines your new realm. This will be provided later in more detail in the **Export and Import** subsection.
|
||||
|
||||
After creating the realm you are brought back to the main Admin Console page. The current realm will now be set to the realm you just created. You can switch between managing different realms by doing a mouse over on the top left corner drop down menu.
|
||||
|
||||
|
||||
|
||||
52
docs/user-guide/admin/admin-console/email-settings.mdx
Normal file
@@ -0,0 +1,52 @@
|
||||
---
|
||||
sidebar_position: 1
|
||||
sidebar_label: 'email settings'
|
||||
---
|
||||
|
||||
# Email Settings
|
||||
NPIS-IAM sends emails to users to verify their email address, when they forget their passwords, or when an admin needs to receive notifications about a server event. To enable NPIS_IAM to send emails the admin needs to configure SMTP server settings. This is configured per realm.
|
||||
|
||||
## Video Tutorial
|
||||
import videojs from 'video.js';
|
||||
|
||||
<video id="my-video" class="vjs-fill vjs-default-skin" controls preload="auto" width="100%" height="100%" poster="/img/user-guide/email-settings.png" >
|
||||
<source src="/videos/user-guide/admin/admin-login.webm" type="video/webm"/>
|
||||
</video>
|
||||
|
||||
## Reference instructions
|
||||
Please follow the instructions below:
|
||||
|
||||
### Email Tab
|
||||
|
||||
As emails are used for recovering usernames and passwords it’s recommended to use SSL or TLS, especially if the SMTP server is on an external network. To enable SSL click on Enable SSL or to enable TLS click on Enable TLS. You will most likely also need to change the Port (the default port for SSL/TLS is 465).
|
||||
|
||||
If your SMTP server requires authentication click on Enable Authentication and insert the Username and Password.
|
||||
|
||||

|
||||
|
||||
* Host
|
||||
|
||||
- Host denotes the SMTP server hostname used for sending emails.
|
||||
* Port
|
||||
|
||||
- Port denotes the SMTP server port.
|
||||
* From
|
||||
|
||||
- From denotes the address used for the From SMTP-Header for the emails sent.
|
||||
* From Display Name
|
||||
|
||||
- From Display Name allows to configure a user friendly email address aliases (optional). If not set the plain From email address will be displayed in email clients.
|
||||
* Reply To
|
||||
|
||||
- Reply To denotes the address used for the Reply-To SMTP-Header for the mails sent (optional). If not set the plain From email address will be used.
|
||||
* Reply To Display Name
|
||||
|
||||
- Reply To Display Name allows to configure a user friendly email address aliases (optional). If not set the plain Reply To email address will be displayed.
|
||||
* Envelope From
|
||||
|
||||
- Envelope From denotes the Bounce Address used for the Return-Path SMTP-Header for the mails sent (optional).
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
41
docs/user-guide/admin/admin-console/ssl-mode.mdx
Normal file
@@ -0,0 +1,41 @@
|
||||
---
|
||||
sidebar_position: 1
|
||||
sidebar_label: 'ssl'
|
||||
---
|
||||
|
||||
# Secure Socket Layer/Transport Layer Security
|
||||
Each realm has an SSL Mode associated with it. The SSL Mode defines the SSL/HTTPS requirements for interacting with the realm. Browsers and applications that interact with the realm must honor the SSL/HTTPS requirements defined by the SSL Mode or they will not be allowed to interact with the server.
|
||||
|
||||
## Video Tutorial
|
||||
import videojs from 'video.js';
|
||||
|
||||
<video id="my-video" class="vjs-fill vjs-default-skin" controls preload="auto" width="100%" height="100%" poster="/img/user-guide/ssl-mode.png" >
|
||||
<source src="/videos/user-guide/admin/admin-login.webm" type="video/webm"/>
|
||||
</video>
|
||||
|
||||
## Reference instructions
|
||||
Please follow the instructions below:
|
||||
|
||||
### SSL Mode
|
||||
|
||||
NPIS-IAM generates a self-signed certificate which unfortunately isn't secure, and shouldonly be used for testing purposes installing a CA-signed certificate in NPIS-IAM itself or on areverse proxy in front of the NPIS-IAM. The NPIS admin is advised to procure a **wildcard** for the domain npis.go.ug from a credible certificate authority.
|
||||
|
||||

|
||||
|
||||
To configure the SSL Mode of a created or existing realm, the admin needs to click on the Realm Settings left menu item and go to the Login tab.
|
||||
The **Require SSL** option allows you to pick the SSL Mode you want. Here is an explanation of each mode:
|
||||
|
||||
|
||||
|
||||
* external requests
|
||||
|
||||
- Users can interact with NPIS-IAM without SSL so long as they stick to private IP addresses like localhost, 127.0.0.1, 10.x.x.x, 192.168.x.x, and 172.16.x.x. Any attempt to access NPIS-IAM without SSL from a non-private IP address you will get an error.
|
||||
* none
|
||||
|
||||
- NPIS-IAM does not require SSL. This should really only be used in testing
|
||||
* all requests
|
||||
|
||||
- NPIS-IAM requires SSL for all IP addresses.
|
||||
|
||||
|
||||
|
||||
110
docs/user-guide/admin/core-concepts-and-terms.mdx
Normal file
@@ -0,0 +1,110 @@
|
||||
---
|
||||
sidebar_position: 2
|
||||
sidebar_label: 'core terms and concepts'
|
||||
---
|
||||
|
||||
# System Administration Guide
|
||||
|
||||
NPIS-IAM (Identity Access Management) as an Identity Management (IDM) provider, is a single sign on microservice for for all other microservices that consititute NPIS and all RESTful web services that external stakeholders use to interface with NPIS. The goal of NPIS-IAM is to make security simple so that they are easily tailorable to the specific requirements of the petroleum supply department and the ministry in general. NPIS-IAM provides customizable features (user interfaces) for the admin to configure all units of functionality regarding login, registration, administration, and account management. As was requested in [section 3.0 of the ToR](../../project-requirements/ToR#row-one) and [section 10.0 of the ToR](../../project-requirements/ToR#10.0), the NPIS-IAM as an integration platform to hook it into existing LDAP and Active Directory servers of the petroleum supply department or ministry in general as well as delegate authentication to third party identity providers like NITA-U's unified ID system for all government MDA systems.
|
||||
|
||||
## How NPIS-IAM Works?
|
||||
|
||||
Decades long past experience with GoU entreprise clientele who demanded integration of user Federation, Identity and Service Provider capabilities, as part of Identity Management solutions required the consultant to join the [2011 PicketLink project's global call](https://www.picketlink.org/) for Java EE (Entreprise Edition) applications engineering teams to collaborate to what was a central hub for all security related efforts required for **Red Hat** Middleware integration. PicketLink was and still is a security framework providing a rich set of capabilities for Java EE applications including Authentication, Authorization or Permissions APIs and flexible IDM solution.
|
||||
|
||||

|
||||
|
||||
The consultant has since extended features on top of PicketLink that make up a toolbox of different useful APIs and helper classes in identity and security areas for GoU entreprise clientele before and after the [merge of all key features of PicketLink into **Keycloak** in 2015](https://www.picketlink.org/news/2015/03/10/PicketLink-and-Keycloak-project-merge/) which was done to combine the strengths of both projects and providing their communities a single polished and unified security solution. However, the custom features, like inclusion of NITA-U's UGPass and My-UG implementations of identity that have been developed and maintained upstream via the original picketlink codebase through the decades, do make the current NPIS-IAM microservice functions similars but also differently from the now widely known Keycloak.
|
||||
|
||||
|
||||
<!-- [ToR](../../project-requirements/ToR#compliance-matrix-to-the-system-specifications) SAML (Security Assertion Markup Language) -->
|
||||
|
||||
## Core concepts and terms
|
||||
|
||||
Consider these core concepts and terms before attempting to use NPIS-IAM (Identity Access Management) to secure your web applications and REST services.
|
||||
|
||||
### users
|
||||
Users are entities that are able to log into the system. They can have attributes associated with themselves like email, username, address, phone number, and birthday. They can be assigned group membership and have specific roles assigned to them.
|
||||
### authentication
|
||||
The process of identifying and validating a user.
|
||||
### authorization
|
||||
The process of granting access to a user.
|
||||
### credentials
|
||||
Credentials are pieces of data that NPIS-IAM uses to verify the identity of a user. Some examples are passwords, one-time-passwords, digital certificates, or even fingerprints.
|
||||
### roles
|
||||
Roles identify a type or category of user. Admin, Workflow Modeller, form designer, and client users are all typical roles that may exist in an organization. NPIS-IAM assigns access and permissions to specific roles rather than individual users as dealing with users can be too fine-grained and hard to manage.
|
||||
### user role mapping
|
||||
A user role mapping defines a mapping between a role and a user. A user can be associated with zero or more roles. This role mapping information can be encapsulated into tokens and assertions so that applications can decide access permissions on various resources they manage.
|
||||
### composite roles
|
||||
A composite role is a role that can be associated with other roles. For example a superuser composite role could be associated with the npis-admin and npis-designer roles. If a user is mapped to the superuser role they also inherit the admin and form-designer roles.
|
||||
### groups
|
||||
Groups manage groups of users. Attributes can be defined for a group. The admin can map roles to a group as well. Users that become members of a group inherit the attributes and role mappings that group defines.
|
||||
### realms
|
||||
A realm manages a set of users, credentials, roles, and groups. A user belongs to and logs into a realm. Realms are isolated from one another and can only manage and authenticate the users that they control. For example, internal PSD users can isolated from external client (OMC) users for a difference in their user profile attributes.
|
||||
### clients
|
||||
Clients are entities that can request NPIS-IAM to authenticate a user. Most often, clients are applications and services that want to use NPIS-IAM to secure themselves and provide a single sign-on solution. Clients can also be entities that just want to request identity information or an access token so that they can securely invoke other services on the network that are secured by NPIS-IAM. For example, NPIS microservices like the form-management engine or BPM workflow engine or the NPIS-Web user interface do use the NPIS-IAM to authenticate users.
|
||||
<!-- ### client adapters
|
||||
Client adapters are plugins that you install into your application environment to be able to communicate and be secured by NPIS-IAM (Identity Access Management). NPIS-IAM (Identity Access Management) has a number of adapters for different platforms that you can download. There are also third-party adapters you can get for environments that we don’t cover. -->
|
||||
### consent
|
||||
Consent is when you as an admin want a user to give permission to a client before that client can participate in the authentication process. After a user provides their credentials, NPIS-IAM will pop up a screen identifying the client requesting a login and what identity information is requested of the user. User can decide whether or not to grant the request.
|
||||
### client scopes
|
||||
When a client is registered, the admin must define protocol mappers and role scope mappings for that client. It is often useful to store a client scope, to make creating new clients easier by sharing some common settings. This is also useful for requesting some claims or roles to be conditionally based on the value of scope parameter. NPIS-IAM provides the concept of a client scope for this.
|
||||
### client role
|
||||
Clients can define roles that are specific to them. This is basically a role namespace dedicated to the client.
|
||||
### identity token
|
||||
A token that provides identity information about the user. Part of the OpenID Connect specification. For example, external system interface requirements from other stakeholders like URA do impose a conditional regular polling of API transactional data, they can only be identified with an indetity token.
|
||||
### access token
|
||||
A token that can be provided as part of an HTTP request that grants access to the service being invoked on. This is part of the OpenID Connect and OAuth 2.0 specification. like identity token above, external system interface requirements from other stakeholders like URA do impose a conditional regular polling of API transactional data, can use access tokens.
|
||||
### assertion
|
||||
Information about a user. This usually pertains to an XML blob data that is included in a SAML authentication response that provided identity metadata about an authenticated user.
|
||||
### service account
|
||||
Each client has a built-in service account which allows it to obtain an access token.
|
||||
### direct grant
|
||||
A way for a client to obtain an access token on behalf of a user via a REST invocation.
|
||||
### protocol mappers
|
||||
For each client you can tailor what claims and assertions are stored in the OIDC token or SAML assertion. The admin does this per client by creating and configuring protocol mappers.
|
||||
### session
|
||||
When a user logs in, a session is created to manage the login session. A session contains information like when the user logged in and what applications have participated within single-sign on during that session. Both admins and users can view session information.
|
||||
### user federation provider
|
||||
NPIS-IAM can store and manage users. Often, organizations like the PSD already have LDAP or Active Directory services that store user and credential information. The NPIS admin can point NPIS-IAM to validate credentials from those external stores and pull in identity information. However, since NPIS also has external OMC users who are not part of the PSD (with LDAP), this requires the admin to create another realm for either group of users.
|
||||
### identity provider
|
||||
An identity provider (IDP) is a service that can authenticate a user. NPIS-IAM is an IDP.
|
||||
### identity provider federation
|
||||
NPIS-IAM (Identity Access Management) can be configured to delegate authentication to one or more IDPs. Social login via Facebook or Google+ is an example of identity provider federation. The admin can also hook NPIS-IAM to delegate authentication to any other OpenID Connect or SAML 2.0 IDP.
|
||||
### identity provider mappers
|
||||
When doing IDP federation the admin can map incoming tokens and assertions to user and session attributes. This helps the admin propagate identity information from the external IDP to the client requesting authentication.
|
||||
### required actions
|
||||
Required actions are actions a user must perform during the authentication process. A user will not be able to complete the authentication process until these actions are complete. For example, an admin may schedule users to reset their passwords every month. An update password required action would be set for all these users.
|
||||
### authentication flows
|
||||
Authentication flows are work flows a user must perform when interacting with certain aspects of the system. A login flow can define what credential types are required. A registration flow defines what profile information a user must enter and whether something like reCAPTCHA must be used to filter out bots. Credential reset flow defines what actions a user must do before they can reset their password.
|
||||
### events
|
||||
Events are audit streams that admins can view and hook into.
|
||||
<!-- ### themes
|
||||
Every screen provided by NPIS-IAM is backed by a theme. Themes define HTML templates and stylesheets which you can override as needed.
|
||||
|
||||
import Stress from '@site/src/components/Stress.js';
|
||||
|
||||
<Stress color="#25c2a0">NPIS green</Stress>
|
||||
|
||||
|
||||
|
||||
export const Highlight = ({children, color}) => (
|
||||
<span
|
||||
style={{
|
||||
backgroundColor: color,
|
||||
borderRadius: '20px',
|
||||
color: '#fff',
|
||||
padding: '10px',
|
||||
cursor: 'pointer',
|
||||
}}
|
||||
onClick={() => {
|
||||
alert(`You clicked the color ${color} with label ${children}`);
|
||||
}}>
|
||||
{children}
|
||||
</span>
|
||||
);
|
||||
|
||||
<Highlight color="#25c2a0">Docusaurus green</Highlight> and <Highlight color="#1877F2">Facebook blue</Highlight> are my favorite colors.
|
||||
|
||||
I can write **Markdown** alongside my _JSX_!
|
||||
|
||||
-->
|
||||
75
docs/user-guide/admin/course.mdx
Normal file
@@ -0,0 +1,75 @@
|
||||
---
|
||||
sidebar_position: 1
|
||||
sidebar_label: 'Video Course'
|
||||
---
|
||||
|
||||
# Steps
|
||||
This guides walks through the user the step by step instructions on how the NPIS sysyem administratos logs into the system.
|
||||
|
||||
|
||||
import videojs from 'video.js';
|
||||
|
||||
|
||||
<!--
|
||||
|
||||
import videojsPlaylistPlugin from 'videojs-playlist';
|
||||
|
||||
width="640" height="360"
|
||||
width="100%" height="100%"
|
||||
src="/videos/user-guide/admin/admin-login.webm" type="video/webm"
|
||||
src="//vjs.zencdn.net/v/oceans.mp4 type="video/mp4"
|
||||
|
||||
src="/videos/oceans.mp4 type="video/mp4"
|
||||
|
||||
src="/videos/Big_Buck_Bunny_360_10s_1MB.mp4" type="video/mp4"
|
||||
src="/videos/Big_Buck_Bunny_360_10s_1MB.webm" type="video/webm"
|
||||
|
||||
<p class="vjs-no-js">
|
||||
To view this video please enable JavaScript, and consider upgrading to a web browser that
|
||||
<a href="https://videojs.com/html5-video-support/" target="_blank">supports HTML5 video</a>
|
||||
</p>
|
||||
|
||||
class="video-js vjs-default-skin"
|
||||
-->
|
||||
|
||||
<video id="my-video" class="vjs-fill vjs-default-skin" controls preload="auto" width="100%" height="100%" poster="/videos/user-guide/admin/admin-login.png" >
|
||||
<source src="/videos/user-guide/admin/admin-login.webm" type="video/webm"/>
|
||||
</video>
|
||||
|
||||
User guides provided in this section are proxied to serve as both training and **User Acceptance Tests (UATs)** for all NPIS users as detailed in the [Software Requirements Specification (SRS) Document](../project-requirements/SRS#system-users-and-characteristics) to execute their respective [system roles in the same SRS Document](../project-requirements/SRS#user-roles).
|
||||
|
||||
## Getting Started
|
||||
|
||||
Users reading this guide are to select their respective user group/roles in the sidebar on the left under User Guides to complete these UATs and training by expanding the menu to further reveal a breakdown of all the usecases for the system tasks executable by their user role/group.
|
||||
|
||||
|
||||
:::tip[Specialized Users]
|
||||
|
||||
Executing certain system task roles does require the user to have the neccesary knowledge underlying the technical standards used to
|
||||
implement the features and functionality pertaining to those tasks. For example:
|
||||
|
||||
The Admin User Guides do require the admin user to have the technical know how on technical standard (IETF RFC 6749 and 6750) known as **OpenID Connect (OIDC)**, an interoperable authentication protocol based on the OAuth 2.0 framework of specifications.
|
||||
|
||||
:::
|
||||
|
||||
|
||||
:::danger[Missconfigured System]
|
||||
|
||||
The failure for a certain user to configure the system right, most certainly causes the system to be unusable.
|
||||
|
||||
:::
|
||||
|
||||
|
||||
:::info[Learning Resources]
|
||||
|
||||
The user guide therefore provides such an introduction to the user in form of a prime, or brief introductory notes on the subject matter. An in the case the where is the is more ground to cover beyond the scope of the project, the guide refers the users to curated resources online like links to learning material, standards, or vendor documentation.
|
||||
|
||||
:::
|
||||
|
||||
## username
|
||||
This is the identifier that the user was given, or this case, the admin being the system first user, its the superuser id that system assigns
|
||||
the first user.
|
||||
|
||||
## password
|
||||
This is the
|
||||
|
||||
24
docs/user-guide/admin/goals-and-objectives.mdx
Normal file
@@ -0,0 +1,24 @@
|
||||
---
|
||||
sidebar_position: 1
|
||||
sidebar_label: 'goals and objectives'
|
||||
---
|
||||
|
||||
# Goals and Objectives
|
||||
|
||||
Purposefully, this is to guide the system administrator to configure NPIS' access, identity and security requirements using the NPIS-IAM (Identity Access Management) microservice for NPIS' users, other microservices and external exterfaces by following the step by step guide.
|
||||
|
||||
:::danger[Misconfigurations]
|
||||
Any misconfiguration on any of NPIS' access and identity requirements listed, will result in NPIS improper setup or unusability.
|
||||
|
||||
That is, access, identity and security settings and configurations of the system's production environment, are functional requirements, without which the system cannot function. These aren't casual on and off switches but rather, the administrator alone is solely liable for the loss and damage that result from misconfigured settings.
|
||||
|
||||
:::
|
||||
|
||||
| # | Objective | Goal |
|
||||
|:----------|:-----------|:-----------|
|
||||
| 1 | core terms and concepts | a quick prime to help users with the admin role to aquiate themselves with the terminologies and conceptul understanding of technical reasoning behind Authorization and Authentication with regard to OAuth2.0 and openIDConnect standards as single-sign-on protocols |
|
||||
| 2 | admin console login | learn to access the admin console's admin account |
|
||||
| 3 | create realms | learn to isolate users, their credentials, roles, groups and clients, role mappings into a logical container called a realm in the openIDConnect world |
|
||||
| 4 | email settings | learn to configure the NPIS-IAM microservice's email as part of the admin account's form of communication to users and other systems |
|
||||
| 5 | ssl | guide the admin on how to configure ssl for NPIS-IAM microservice
|
||||
| 6 | | |
|
||||
20
docs/user-guide/admin/user-account-management/admin-login.md
Normal file
@@ -0,0 +1,20 @@
|
||||
---
|
||||
sidebar_position: 1
|
||||
---
|
||||
|
||||
import ReactPlayer from "react-player"
|
||||
|
||||
# Admin Login
|
||||
|
||||
Documents are **groups of pages** connected through:
|
||||
|
||||
- a **sidebar**
|
||||
- **previous/next navigation**
|
||||
- **versioning**
|
||||
|
||||
## Create your first Doc
|
||||
|
||||
|
||||
<div className="video__wrapper">
|
||||
<ReactPlayer className="video__player" controls height="100%" src="/videos/user-guide/admin/admin-login.webm" width="100%" />
|
||||
</div>
|
||||
24
docs/user-guide/approver/goals-and-objectives.mdx
Normal file
@@ -0,0 +1,24 @@
|
||||
---
|
||||
sidebar_position: 1
|
||||
sidebar_label: 'goals and objectives'
|
||||
---
|
||||
|
||||
# Goals and Objectives
|
||||
|
||||
Purposefully, this is to guide the system administrator to configure NPIS' access, identity and security requirements using the NPIS-IAM (Identity Access Management) microservice for NPIS' users, other microservices and external exterfaces by following the step by step guide.
|
||||
|
||||
:::danger[Misconfigurations]
|
||||
Deployed BPM workflow models for licensing, inspection monitoring and enforcement in petroleum supply operations that are misconfigured with errors will cause automated workflow processes not to work as intended including user tasks that are supposed to be executed by this user group.
|
||||
|
||||
:::
|
||||
|
||||
| # | Objective | Goal |
|
||||
|:----------|:-----------|:-----------|
|
||||
| 1 | core terms and concepts | a quick prime to help users granted with this role to aquiate themselves with the terminologies and conceptul understanding of BPM workflows |
|
||||
| 2 | approver login | users granted with this role to learn to access their account |
|
||||
| 3 | user tasks | user granted with this role to learn to execute workflow tasks in the task list |
|
||||
| 4 | email settings | user granted with approver role to learn to configure email as part of their account's form of communication and notification to the systems |
|
||||
| 5 | | |
|
||||
| 6 | | |
|
||||
| 7 | | |
|
||||
| 8 | | |
|
||||
24
docs/user-guide/client/goals-and-objectives.mdx
Normal file
@@ -0,0 +1,24 @@
|
||||
---
|
||||
sidebar_position: 1
|
||||
sidebar_label: 'goals and objectives'
|
||||
---
|
||||
|
||||
# Goals and Objectives
|
||||
|
||||
Purposefully, this is to guide the system administrator to configure NPIS' access, identity and security requirements using the NPIS-IAM (Identity Access Management) microservice for NPIS' users, other microservices and external exterfaces by following the step by step guide.
|
||||
|
||||
:::danger[Misconfigurations]
|
||||
Deployed BPM workflow models for licensing, inspection monitoring and enforcement in petroleum supply operations that are misconfigured with errors will cause automated workflow processes not to work as intended including user tasks that are supposed to be executed by this user group.
|
||||
|
||||
:::
|
||||
|
||||
| # | Objective | Goal |
|
||||
|:----------|:-----------|:-----------|
|
||||
| 1 | core terms and concepts | a quick prime to help users granted with this role to aquiate themselves with the terminologies and conceptul understanding of BPM workflows |
|
||||
| 2 | approver login | users granted with this role to learn to access their account |
|
||||
| 3 | user tasks | user granted with this role to learn to execute workflow tasks in the task list |
|
||||
| 4 | email settings | user granted with approver role to learn to configure email as part of their account's form of communication and notification to the systems |
|
||||
| 5 | | |
|
||||
| 6 | | |
|
||||
| 7 | | |
|
||||
| 8 | | |
|
||||
24
docs/user-guide/evaluater/goals-and-objectives.mdx
Normal file
@@ -0,0 +1,24 @@
|
||||
---
|
||||
sidebar_position: 1
|
||||
sidebar_label: 'goals and objectives'
|
||||
---
|
||||
|
||||
# Goals and Objectives
|
||||
|
||||
Purposefully, this is to guide the system administrator to configure NPIS' access, identity and security requirements using the NPIS-IAM (Identity Access Management) microservice for NPIS' users, other microservices and external exterfaces by following the step by step guide.
|
||||
|
||||
:::danger[Misconfigurations]
|
||||
Deployed BPM workflow models for licensing, inspection monitoring and enforcement in petroleum supply operations that are misconfigured with errors will cause automated workflow processes not to work as intended including user tasks that are supposed to be executed by this user group.
|
||||
|
||||
:::
|
||||
|
||||
| # | Objective | Goal |
|
||||
|:----------|:-----------|:-----------|
|
||||
| 1 | core terms and concepts | a quick prime to help users granted with this role to aquiate themselves with the terminologies and conceptul understanding of BPM workflows |
|
||||
| 2 | approver login | users granted with this role to learn to access their account |
|
||||
| 3 | user tasks | user granted with this role to learn to execute workflow tasks in the task list |
|
||||
| 4 | email settings | user granted with approver role to learn to configure email as part of their account's form of communication and notification to the systems |
|
||||
| 5 | | |
|
||||
| 6 | | |
|
||||
| 7 | | |
|
||||
| 8 | | |
|
||||
24
docs/user-guide/form-designer/goals-and-objectives.mdx
Normal file
@@ -0,0 +1,24 @@
|
||||
---
|
||||
sidebar_position: 1
|
||||
sidebar_label: 'goals and objectives'
|
||||
---
|
||||
|
||||
# Goals and Objectives
|
||||
|
||||
Purposefully, this is to guide the system administrator to configure NPIS' access, identity and security requirements using the NPIS-IAM (Identity Access Management) microservice for NPIS' users, other microservices and external exterfaces by following the step by step guide.
|
||||
|
||||
:::danger[Misconfigurations]
|
||||
Deployed BPM workflow models for licensing, inspection monitoring and enforcement in petroleum supply operations that are misconfigured with errors will cause automated workflow processes not to work as intended including user tasks that are supposed to be executed by this user group.
|
||||
|
||||
:::
|
||||
|
||||
| # | Objective | Goal |
|
||||
|:----------|:-----------|:-----------|
|
||||
| 1 | core terms and concepts | a quick prime to help users granted with this role to aquiate themselves with the terminologies and conceptul understanding of BPM workflows |
|
||||
| 2 | approver login | users granted with this role to learn to access their account |
|
||||
| 3 | user tasks | user granted with this role to learn to execute workflow tasks in the task list |
|
||||
| 4 | email settings | user granted with approver role to learn to configure email as part of their account's form of communication and notification to the systems |
|
||||
| 5 | | |
|
||||
| 6 | | |
|
||||
| 7 | | |
|
||||
| 8 | | |
|
||||
198
docs/user-guide/intro.md
Normal file
@@ -0,0 +1,198 @@
|
||||
---
|
||||
sidebar_position: 1
|
||||
label: 'Guides Overview'
|
||||
---
|
||||
<!-- import ReactPlayer from "react-player" -->
|
||||
|
||||
# Guide Introduction
|
||||
|
||||
All user guides documented here, are purposefully to serve as both training manuals and technical proxy (equivalency) to as **User Acceptance Tests (UATs)** for all NPIS use cases as specified in the [Software Requirements Specification (SRS) Document](../project-requirements/SRS#system-users-and-characteristics) for NPIS users to execute all case scenarios for their respective [system roles in the same SRS Document](../project-requirements/SRS#user-roles).
|
||||
|
||||
|
||||
Users reading this guide are to select their respective user group/roles in the sidebar on the left under User Guides to complete these UATs and training by expanding the menu to further reveal a breakdown of all the usecases for the system tasks executable by their user role/group.
|
||||
|
||||
## NPIS Design and Features
|
||||
All system units of functionality for all NPIS documented [system roles in the SRS Document](../project-requirements/SRS#user-roles), were synthesized into a service oriented architectural design that groups related functionality into microservices that are containerized to run indenpendently. The microservices architectural design shown below, allows specific user roles assigned to particular user groups be executable from particular microservices.
|
||||
<!--  -->
|
||||

|
||||
The designed microservices that make up NPIS are outlined below:
|
||||
|
||||
### NPIS-IAM Microservice
|
||||
All other microservices are configured to point to and be secured by the NPIS-IAM (Identity Access Management). NPIS-IAM uses open protocol standards **OpenID Connect** and **SAML 2.0** to secure other microservices and NPIS in all. NPIS frontend clients (Browser UI and NPIS mobile applications) redirect a user’s browser or app ui from the application to the NPIS-IAM as an authentication provider where they enter their credentials. This redirection is important because users are completely isolated from applications and applications never see a user’s credentials. Applications instead are given an identity token or assertion that is cryptographically signed. These tokens can have identity information like username, address, email, and other profile data. They can also hold permission data so that applications can make authorization decisions. These tokens are also used to make secure invocations on NPIS' REST-based other microservices that execute NPIS business logic.
|
||||
|
||||
### Forms Management Microservice
|
||||
This is designed to incorporate all form designing/building and publishing functionality for licensing, inspection monitoring and enforcement in petroleum supply operations workflows. Also, it handles the versioning, captureing, storage, retrieval and rendering of captured form data.
|
||||
|
||||
### BPM Workflow Management Microservices
|
||||
This microservice is responsible for providing the functionality for modelling or designing business process management workflows, for streamlining the automation of task execution during permits and licensing, volume storage and tracking, pricing, environmental assessment, monitoring and inspection, compliance enforcement, labs and quality assurance, LGP and standards business processes.
|
||||
|
||||
### Document Management Microservice
|
||||
This encampasses all functionality to document genetation from form captured data from petroleum supply operation workflows, these includes: permits, licenses, physical application forms, reports like volumes, financial, etc. The same microservice also handles document digitization that enables migrations of legacy petroleum supply operations data into NPIS.
|
||||
|
||||
### Data Analysis Microservice
|
||||
This microservice is designed to house all functionality to compute petroleum supply operations information insights using data visualization dashboards for policy input and forecasting. This uses regressional models and opion mining of large data volumes using the microservice sentimental analysis engine.
|
||||
|
||||
### NPIS Web API Gateway Microservice
|
||||
This encampasses all units functionality that implements all petroleum supply operations business logic which includes ermits and licensing, volume storage and tracking, pricing, environmental assessment, monitoring and inspection, compliance enforcement, labs and quality assurance, LGP and standards business.
|
||||
|
||||
## User Groups
|
||||
Specific PSD personel designations responsible for executing specific units of functionality (tasks) within NPIS have therefore been categorized into user groups to which roles granted with specific roles and permissions are granted. These are briefly outlined below:
|
||||
|
||||
### Administrator
|
||||
|
||||
A super user role granted the permissions to execute tasks for bootstraping NPIS from the group up with initial authorization and authentication data like user roles, groups, profiles, credentials, accounts as well as system identity data like mail and domains, plus system security requirements like cryptographic keys, ssl certificates, access tokens, account secrets, etc. Requirement Traceability Matrix (RTM) of the project does reference this requirement from [section 3.0 of the ToR](../project-requirements/ToR#row-one) and [section 10.0 of the ToR](../project-requirements/ToR#10.0).
|
||||
|
||||
:::tip[Requirements]
|
||||
Users assigned to the admin user group are PSD IT personel who are required to be acquianted with system administrative knowledge with regard to, networks, security, databases, and special technical know how on technical standard (IETF RFC 6749 and 6750) known as **OpenID Connect (OIDC)**, an interoperable authentication protocol based on the OAuth 2.0 framework of specifications.
|
||||
:::
|
||||
|
||||
|
||||
:::danger[Requirements]
|
||||
Any misconceptions or misunderstandings on this know-how, will result in NPIS improper setup or unusability.
|
||||
|
||||
:::
|
||||
|
||||
:::info[Learning Resources]
|
||||
|
||||
The user guide therefore provides such an introduction to the user in form of a prime, or brief introductory notes on the subject matter. An in the case the where there is more ground to cover beyond the scope of the project, the guide refers the users to curated resources online like links to learning material, standards, or vendor documentation.
|
||||
|
||||
:::
|
||||
|
||||
Users from this user group should select the admin submenu from the left sidebar for their tutorials and user guides.
|
||||
|
||||
### Form Designer
|
||||
|
||||
A user role granted the permissions to design and publish forms for all petroeleum supply operations including; petroleum construction permits, (retial or wholesale distribution), transport, storage, operating licenses, as well as enforcement monitoring and regulatory inspections. Requirement Traceability Matrix (RTM) of the project does reference this requirement from [section 6.0 of the ToR](../project-requirements/ToR#6.0)
|
||||
|
||||
:::tip[Requirements]
|
||||
Users assigned to the Workflow modeller user group are PSD IT personel who are required to be acquianted with the [**ISO/IEC 11179-1:2023** ](https://www.iso.org/standard/78914.html) standard, an international standard for standardizing and registering metadata to make data understandable and shareable across different systems. This standard, along with others like [**IISO/IEC 15445:2000 DTD**](https://www.w3.org/People/mimasa/HTML/DTD/ISO-HTML/DTD-TREE.html)and for [HTML form controls](https://html.spec.whatwg.org/multipage/forms.html) elements like text inputs, checkboxes, and radio buttons used within a `<form>` to collect user data. Their functionality is defined by specifications from organizations like the W3C, The International Organization for Standardization (ISO) and the International Electrotechnical Commission (IEC) have specific standards that govern web accessibility and other aspects, which indirectly affect how these form controls are implemented to meet international requirements.
|
||||
:::
|
||||
|
||||
:::danger[Requirements]
|
||||
Any misconceptions or misunderstandings on this know-how, will result in NPIS forms unusability.
|
||||
|
||||
:::
|
||||
|
||||
:::info[Learning Resources]
|
||||
|
||||
The user guide therefore provides such an introduction to the user in form of a prime, or brief introductory notes on [HTML form controls](https://html.spec.whatwg.org/multipage/forms.html). An in the case the where there is more ground to cover beyond the scope of the project, the guide refers the users to curated resources online like links to learning material, standards, or vendor documentation.
|
||||
|
||||
:::
|
||||
|
||||
Users from this user group should select the form designer submenu from the left sidebar for their tutorials and user guides.
|
||||
|
||||
### Workflow Modeller
|
||||
|
||||
A user role granted the permissions to model Business Process Management (BPM) workflows to streamline and automate all petroeleum supply operations including; petroleum construction permits, (retial or wholesale distribution), transport, storage, operating licenses, as well as enforcement monitoring and regulatory inspections. Requirement Traceability Matrix (RTM) of the project does reference this requirement from [section 6.0 of the ToR](../project-requirements/ToR#6.0)
|
||||
|
||||
:::tip[Requirements]
|
||||
Users assigned to the Workflow modeller user group are PSD IT personel who are required to be acquianted with the [**ISO/IEC 19510:2013** ](https://www.iso.org/standard/62652.html) standard for business process management (BPM) workflows which specifies the Business Process Model and Notation (BPMN). BPMN provides a standardized graphical notation for modeling business processes, making them understandable to all business stakeholders, from analysts to developers and managers. This standard, along with others like **ISO 9000**, helps organizations streamline operations, improve efficiency, and manage quality and risk through a process-centric approach.
|
||||
:::
|
||||
|
||||
:::danger[Requirements]
|
||||
Any misconceptions or misunderstandings on this know-how, will result in unfunctional NPIS workflows or general NPIS unusability.
|
||||
|
||||
:::
|
||||
|
||||
:::info[Learning Resources]
|
||||
|
||||
The user guide therefore provides such an introduction to the user in form of a prime, or brief introductory notes on [Business Process Model and Notation (BPMN) specification](https://www.omg.org/bpmn/). An in the case the where there is more ground to cover beyond the scope of the project, the guide refers the users to curated resources online like links to learning material, standards, or vendor documentation.
|
||||
|
||||
:::
|
||||
|
||||
Users from this user group should select the workflow modeller submenu from the left sidebar for their tutorials and user guides.
|
||||
|
||||
### NPIS Client
|
||||
|
||||
A user role granted with filling-out and submission permissions for ***starter forms*** that trigger or initiate petroeleum supply BPM operations workflows. These include; petroleum construction permits, retial or wholesale distribution, transport, storage, operating licenses as well as enforcement monitoring and regulatory inspections workflow forms.
|
||||
|
||||
:::tip[Requirements]
|
||||
Users assigned to the NPIS Client user group are Oil Marketing Companies (OMCs) registered accounts and PSD officers to whom executing petroeleum supply operations workflows involves submitting partial or full forms as part of their composite user group roles.
|
||||
:::
|
||||
|
||||
:::danger[Requirements]
|
||||
Any misconfigured client roles, will result in unfunctional NPIS client accounts or general NPIS unusability.
|
||||
|
||||
:::
|
||||
|
||||
:::info[Learning Resources]
|
||||
|
||||
The user guide for client user roles will also be made available within client user accounts as quick start guides as sources of information so as client accounts like OMCs can learn how to use the system even if they don't directly have access to the documentation portal.
|
||||
|
||||
:::
|
||||
|
||||
Users from this user group should select the npis clients ubmenu from the left sidebar for their tutorials and user guides.
|
||||
|
||||
|
||||
### NPIS Reviewer
|
||||
|
||||
A user role granted with filling-out and submission permissions for ***user task forms*** that model work or activity that needs to be done by a human actor when automated process execution arrives at their user task in petroeleum supply BPM operations workflows. These include; petroleum construction permits, retial or wholesale distribution, transport, storage, operating licenses review of earlier submitted application ***starter forms*** as well as enforcement monitoring and regulatory inspections workflow forms.
|
||||
|
||||
:::tip[Requirements]
|
||||
Users assigned to the NPIS Reviewer user group are PSD officers to whom executing petroeleum supply operations workflows involves submitting partial or full forms as part of their composite user group roles in for example review of licesing application for say, errors and omissions etc.
|
||||
:::
|
||||
|
||||
:::danger[Requirements]
|
||||
Any misconfigured reviewer roles, will result in unfunctional NPIS reviewer user group accounts holders or general NPIS unusability.
|
||||
|
||||
:::
|
||||
|
||||
:::info[Learning Resources]
|
||||
|
||||
The user guide for reviewer user roles will also be made available within user accounts as quick start guides as sources of information so as client accounts like petrolem officers, supervising petroleum officers can learn how to use the system even if they don't directly have access to the documentation portal.
|
||||
|
||||
:::
|
||||
|
||||
Users from this user group should select the npis reviewer submenu from the left sidebar for their tutorials and user guides.
|
||||
|
||||
|
||||
### NPIS Evaluator
|
||||
|
||||
A user role granted with filling-out and submission permissions for ***user task forms*** that model work or activity that needs to be done by a human actor when automated process execution arrives at their user task in petroeleum supply BPM operations workflows. These include; petroleum construction permits, retial or wholesale distribution, transport, storage, operating licenses evaluation of earlier submitted application ***starter forms*** or other ***user task forms*** as well as enforcement monitoring and regulatory inspections workflow forms.
|
||||
|
||||
:::tip[Requirements]
|
||||
Users assigned to the NPIS Evaluator user group are PSD officers to whom executing petroeleum supply operations workflows involves submitting partial or full forms as part of their composite user group roles in for example adding an evaluation report of licesing or construction permit application..
|
||||
:::
|
||||
|
||||
:::danger[Requirements]
|
||||
Any misconfigured evaluator roles, will result in unfunctional NPIS evaluator user group accounts holders or general NPIS unusability.
|
||||
|
||||
:::
|
||||
|
||||
:::info[Learning Resources]
|
||||
|
||||
The user guide for evaluator user roles will also be made available within user accounts as quick start guides as sources of information so as client accounts like supervising or principal petroleum officers can learn how to use the system even if they don't directly have access to the documentation portal.
|
||||
|
||||
:::
|
||||
|
||||
Users from this user group should select the npis evaluator submenu from the left sidebar for their tutorials and user guides.
|
||||
|
||||
|
||||
### NPIS Approver
|
||||
|
||||
A user role granted with filling-out and submission permissions for ***user task forms*** that model work or activity that needs to be done by a human actor when automated process execution arrives at their user task in petroeleum supply BPM operations workflows. These include; petroleum construction permits, retial or wholesale distribution, transport, storage, operating licenses evaluation of earlier submitted application ***starter forms*** or other ***user task forms*** as well as enforcement monitoring and regulatory inspections workflow forms.
|
||||
|
||||
:::tip[Requirements]
|
||||
Users assigned to the NPIS approver user group are PSD officers to whom executing petroeleum supply operations workflows involves submitting partial or full forms as part of their composite user group roles in for example final approval of licesing or construction permit application..
|
||||
:::
|
||||
|
||||
:::danger[Requirements]
|
||||
Any misconfigured approver roles, will result in unfunctional NPIS approver user group accounts holders or general NPIS unusability.
|
||||
|
||||
:::
|
||||
|
||||
:::info[Learning Resources]
|
||||
|
||||
The user guide for approver user roles will also be made available within user accounts as quick start guides as sources of information so as client accounts like supervising or principal petroleum officers can learn how to use the system even if they don't directly have access to the documentation portal.
|
||||
|
||||
:::
|
||||
|
||||
Users from this user group should select the npis approver submenu from the left sidebar for their tutorials and user guides.
|
||||
|
||||
|
||||
<!-- <div className="video__wrapper">
|
||||
<ReactPlayer className="video__player" controls height="50%" src="/videos/Big_Buck_Bunny_360_10s_1MB.webm" width="50%" />
|
||||
</div> -->
|
||||
|
||||
<!-- Adds a import GifPlayer from "react-gif-player"; to the markdown.
|
||||
Inserts html like <GifPlayer gif="https://media.giphy.com/media/VhiAuDYHkNPydiNnOs/giphy.gif" /> -->
|
||||
24
docs/user-guide/reviewer/goals-and-objectives.mdx
Normal file
@@ -0,0 +1,24 @@
|
||||
---
|
||||
sidebar_position: 1
|
||||
sidebar_label: 'goals and objectives'
|
||||
---
|
||||
|
||||
# Goals and Objectives
|
||||
|
||||
Purposefully, this is to guide the system administrator to configure NPIS' access, identity and security requirements using the NPIS-IAM (Identity Access Management) microservice for NPIS' users, other microservices and external exterfaces by following the step by step guide.
|
||||
|
||||
:::danger[Misconfigurations]
|
||||
Deployed BPM workflow models for licensing, inspection monitoring and enforcement in petroleum supply operations that are misconfigured with errors will cause automated workflow processes not to work as intended including user tasks that are supposed to be executed by this user group.
|
||||
|
||||
:::
|
||||
|
||||
| # | Objective | Goal |
|
||||
|:----------|:-----------|:-----------|
|
||||
| 1 | core terms and concepts | a quick prime to help users granted with this role to aquiate themselves with the terminologies and conceptul understanding of BPM workflows |
|
||||
| 2 | approver login | users granted with this role to learn to access their account |
|
||||
| 3 | user tasks | user granted with this role to learn to execute workflow tasks in the task list |
|
||||
| 4 | email settings | user granted with approver role to learn to configure email as part of their account's form of communication and notification to the systems |
|
||||
| 5 | | |
|
||||
| 6 | | |
|
||||
| 7 | | |
|
||||
| 8 | | |
|
||||
24
docs/user-guide/workflow-modeller/goals-and-objectives.mdx
Normal file
@@ -0,0 +1,24 @@
|
||||
---
|
||||
sidebar_position: 1
|
||||
sidebar_label: 'goals and objectives'
|
||||
---
|
||||
|
||||
# Goals and Objectives
|
||||
|
||||
Purposefully, this is to guide the system administrator to configure NPIS' access, identity and security requirements using the NPIS-IAM (Identity Access Management) microservice for NPIS' users, other microservices and external exterfaces by following the step by step guide.
|
||||
|
||||
:::danger[Misconfigurations]
|
||||
Deployed BPM workflow models for licensing, inspection monitoring and enforcement in petroleum supply operations that are misconfigured with errors will cause automated workflow processes not to work as intended including user tasks that are supposed to be executed by this user group.
|
||||
|
||||
:::
|
||||
|
||||
| # | Objective | Goal |
|
||||
|:----------|:-----------|:-----------|
|
||||
| 1 | core terms and concepts | a quick prime to help users granted with this role to aquiate themselves with the terminologies and conceptul understanding of BPM workflows |
|
||||
| 2 | approver login | users granted with this role to learn to access their account |
|
||||
| 3 | user tasks | user granted with this role to learn to execute workflow tasks in the task list |
|
||||
| 4 | email settings | user granted with approver role to learn to configure email as part of their account's form of communication and notification to the systems |
|
||||
| 5 | | |
|
||||
| 6 | | |
|
||||
| 7 | | |
|
||||
| 8 | | |
|
||||
15
src/components/Stress.js
Normal file
@@ -0,0 +1,15 @@
|
||||
import React from 'react';
|
||||
|
||||
export default function Stress({children, color}) {
|
||||
return (
|
||||
<span
|
||||
style={{
|
||||
backgroundColor: color,
|
||||
borderRadius: '2px',
|
||||
color: '#fff',
|
||||
padding: '0.2rem',
|
||||
}}>
|
||||
{children}
|
||||
</span>
|
||||
);
|
||||
}
|
||||
54
src/components/VideoJS.js
Normal file
@@ -0,0 +1,54 @@
|
||||
import React from 'react';
|
||||
import videojs from 'video.js';
|
||||
import 'video.js/dist/video-js.css';
|
||||
|
||||
export const VideoJS = (props) => {
|
||||
const videoRef = React.useRef(null);
|
||||
const playerRef = React.useRef(null);
|
||||
const {options, onReady} = props;
|
||||
|
||||
React.useEffect(() => {
|
||||
|
||||
// Make sure Video.js player is only initialized once
|
||||
if (!playerRef.current) {
|
||||
// The Video.js player needs to be _inside_ the component el for React 18 Strict Mode.
|
||||
const videoElement = document.createElement("video-js");
|
||||
|
||||
videoElement.classList.add('vjs-big-play-centered');
|
||||
videoRef.current.appendChild(videoElement);
|
||||
|
||||
const player = playerRef.current = videojs(videoElement, options, () => {
|
||||
videojs.log('player is ready');
|
||||
onReady && onReady(player);
|
||||
});
|
||||
|
||||
// You could update an existing player in the `else` block here
|
||||
// on prop change, for example:
|
||||
} else {
|
||||
const player = playerRef.current;
|
||||
|
||||
player.autoplay(options.autoplay);
|
||||
player.src(options.sources);
|
||||
}
|
||||
}, [options, videoRef]);
|
||||
|
||||
// Dispose the Video.js player when the functional component unmounts
|
||||
React.useEffect(() => {
|
||||
const player = playerRef.current;
|
||||
|
||||
return () => {
|
||||
if (player && !player.isDisposed()) {
|
||||
player.dispose();
|
||||
playerRef.current = null;
|
||||
}
|
||||
};
|
||||
}, [playerRef]);
|
||||
|
||||
return (
|
||||
<div data-vjs-player>
|
||||
<div ref={videoRef} />
|
||||
</div>
|
||||
);
|
||||
}
|
||||
|
||||
export default VideoJS;
|
||||
17
src/pages/my-react-page.js
Normal file
@@ -0,0 +1,17 @@
|
||||
import React from 'react';
|
||||
import Layout from '@theme/Layout';
|
||||
import ReactPlayer from "react-player"
|
||||
|
||||
|
||||
export default function MyReactPage() {
|
||||
return (
|
||||
// <Layout>
|
||||
// <h1>My React page</h1>
|
||||
// <p>This is a React page</p>
|
||||
// </Layout>
|
||||
|
||||
<ReactPlayer className="video__player" controls height="100%" src="/videos/Big_Buck_Bunny_360_10s_1MB.webm" width="100%" />
|
||||
|
||||
);
|
||||
}
|
||||
|
||||
10
src/pages/player.mdx
Normal file
@@ -0,0 +1,10 @@
|
||||
|
||||
import ReactPlayer from "react-player"
|
||||
|
||||
|
||||
|
||||
|
||||
<div className="video__wrapper">
|
||||
<ReactPlayer className="video__player" controls pip={true} height="100%" src="/videos/Big_Buck_Bunny_360_10s_1MB.webm" width="100%" />
|
||||
</div>
|
||||
|
||||
29
src/pages/video.md
Normal file
@@ -0,0 +1,29 @@
|
||||
---
|
||||
title: my hello page title
|
||||
description: my hello page description
|
||||
hide_table_of_contents: true
|
||||
---
|
||||
import ReactPlayer from "react-player"
|
||||
|
||||
|
||||
# Video
|
||||
|
||||
How are you?
|
||||
|
||||
```js youtubeID=MnrJzXM7a6o
|
||||
function main() {
|
||||
console.log(1);
|
||||
console.log(2);
|
||||
}
|
||||
```
|
||||
|
||||
```js youtubeID=MnrJzXM7a6o 0:10-1:00=(1) 1:10-1:20=(1,2-4)
|
||||
function main() {
|
||||
console.log(1);
|
||||
console.log(2);
|
||||
}
|
||||
```
|
||||
|
||||
<div className="video__wrapper">
|
||||
<ReactPlayer className="video__player" controls height="50%" src="/videos/Big_Buck_Bunny_360_10s_1MB.webm" width="50%" />
|
||||
</div>
|
||||
10
src/pages/videos.md
Normal file
@@ -0,0 +1,10 @@
|
||||
---
|
||||
slug: /
|
||||
sidebar_position: 1
|
||||
---
|
||||
|
||||
import ReactPlayer from "react-player"
|
||||
|
||||
<div className="video__wrapper">
|
||||
<ReactPlayer className="video__player" controls height="100%" src="/static/videos/example_video.mp4" width="100%" />
|
||||
</div>
|
||||
10
src/theme/SearchBar.js
Normal file
@@ -0,0 +1,10 @@
|
||||
import React from 'react';
|
||||
import SearchBar from '@theme-original/SearchBar';
|
||||
|
||||
export default function SearchBarWrapper(props) {
|
||||
return (
|
||||
<>
|
||||
<SearchBar {...props} />
|
||||
</>
|
||||
);
|
||||
}
|
||||
BIN
static/audio/the-wires.mp3
Normal file
BIN
static/img/NPISArchitecture.png
Executable file
|
After Width: | Height: | Size: 1.6 MiB |
BIN
static/img/completed_task.png
Normal file
|
After Width: | Height: | Size: 32 KiB |
BIN
static/img/favicon.png
Executable file
|
After Width: | Height: | Size: 80 KiB |
1
static/img/icon.svg
Executable file
@@ -0,0 +1 @@
|
||||
<svg id="Layer_1" data-name="Layer 1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 389.42 462.49"><defs><style>.cls-1{fill:#14568f;}.cls-2{fill:#f7941d;}</style></defs><path class="cls-1" d="M404.36,239.56a169.36,169.36,0,0,0-.17-49.17l28.32-17.81a197.86,197.86,0,0,0-12.43-37.8l-33.37,2.48a168.21,168.21,0,0,0-29.06-39.65l12.44-31a199.59,199.59,0,0,0-32.27-23.31L312.3,64.87a166.87,166.87,0,0,0-46.83-15l-8.18-32.41q-9.48-.92-19.18-.93a203.66,203.66,0,0,0-20.63,1.06l-7.94,32.49a166.32,166.32,0,0,0-46.72,15.36L137.14,44A199.8,199.8,0,0,0,105,67.53l12.67,31a168.13,168.13,0,0,0-28.78,39.86l-33.38-2.24A197.07,197.07,0,0,0,43.4,174l28.46,17.61A168.43,168.43,0,0,0,72,240.78L43.71,258.59a197.6,197.6,0,0,0,12.42,37.8l33.37-2.48a168.53,168.53,0,0,0,29.07,39.65l-12.44,31a199.74,199.74,0,0,0,32.26,23.32l25.53-21.62a166.44,166.44,0,0,0,46.83,15l5.64,22.36A177.3,177.3,0,0,0,223,340.87a126.2,126.2,0,1,1,30.27,0,177.73,177.73,0,0,0,7.32,65.26l6.12-25a166.85,166.85,0,0,0,46.72-15.36l25.67,21.42a199.86,199.86,0,0,0,32.1-23.54l-12.66-31a168.41,168.41,0,0,0,28.78-39.86l33.38,2.24a198.24,198.24,0,0,0,12.15-37.89Z" transform="translate(-43.4 -16.51)"/><path d="M265.77,237.57c-20.43,6.72-41.2,14.11-62.71,13.76a70.76,70.76,0,0,1-31.51-7.76c-.71-.37-1.38-.77-2-1.18a76.63,76.63,0,0,0,32.72,35.77,60.73,60.73,0,0,1,30.17,44.21c.08.51.15,1,.23,1.52,5.18,35.69-.47,72-15.3,104.9C213.64,437,211,444.5,211,450.89a28.12,28.12,0,0,0,56.23,0c0-6.39-2.65-13.91-6.34-22.1-14.82-32.87-20.48-69.21-15.29-104.9.07-.51.14-1,.22-1.52,2.84-18.93,14.48-35.19,31.09-44.73a76.32,76.32,0,0,0,36.8-50.81C297.47,227.62,281.34,232.44,265.77,237.57ZM220.4,271.26a6.68,6.68,0,1,1,6.68-6.68A6.68,6.68,0,0,1,220.4,271.26Zm1.17,157.27c-12,37.91,17.54,48.93,17.54,48.93C200.7,468.94,221.57,428.53,221.57,428.53Zm17.54-133.88a4,4,0,1,1,4-4A4,4,0,0,1,239.11,294.65Zm35-42a2.76,2.76,0,1,1,2.75-2.75A2.76,2.76,0,0,1,274.07,252.64Z" transform="translate(-43.4 -16.51)"/><path class="cls-2" d="M350.86,215a112,112,0,0,1-99,111.23c.06-.46.13-.92.2-1.38a64.28,64.28,0,0,1,18.57-36.51,79,79,0,1,0-60.35,1.33,61.5,61.5,0,0,1,18.1,35.27c.07.5.15,1,.22,1.52,0,0,0,0,0,.06A112,112,0,1,1,350.86,215Z" transform="translate(-43.4 -16.51)"/></svg>
|
||||
|
After Width: | Height: | Size: 2.1 KiB |
BIN
static/img/master_realm.png
Normal file
|
After Width: | Height: | Size: 60 KiB |
BIN
static/img/microservice.png
Executable file
|
After Width: | Height: | Size: 56 KiB |
427
static/img/microservice.svg
Executable file
@@ -0,0 +1,427 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
|
||||
<!-- Generated by Microsoft Visio, SVG Export microservice.svg Page-1 -->
|
||||
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:ev="http://www.w3.org/2001/xml-events"
|
||||
xmlns:v="http://schemas.microsoft.com/visio/2003/SVGExtensions/" width="8.60964in" height="3.35687in"
|
||||
viewBox="0 0 619.894 241.695" xml:space="preserve" color-interpolation-filters="sRGB" class="st20">
|
||||
<v:documentProperties v:langID="8192" v:metric="true" v:viewMarkup="false"/>
|
||||
|
||||
<style type="text/css">
|
||||
<![CDATA[
|
||||
.st1 {fill:none;stroke:#7f7f7f;stroke-linecap:round;stroke-linejoin:round;stroke-width:0.5}
|
||||
.st2 {fill:none;stroke:none;stroke-linecap:round;stroke-linejoin:round;stroke-width:0.75}
|
||||
.st3 {fill:#000000;font-family:Segoe UI;font-size:0.833336em;font-weight:bold}
|
||||
.st4 {marker-start:url(#mrkr4-16);stroke:#000000;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.5}
|
||||
.st5 {fill:#000000;fill-opacity:1;stroke:#000000;stroke-opacity:1;stroke-width:0.37313432835821}
|
||||
.st6 {fill:#000000;font-family:Segoe UI;font-size:0.833336em}
|
||||
.st7 {font-size:1em}
|
||||
.st8 {fill:none;stroke:#0078d7;stroke-dasharray:2.25,2.25;stroke-linecap:round;stroke-linejoin:round;stroke-width:0.75}
|
||||
.st9 {fill:#ffffff;stroke:#7f7f7f;stroke-linecap:round;stroke-linejoin:round;stroke-width:0.75}
|
||||
.st10 {marker-end:url(#mrkr4-39);stroke:#000000;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.5}
|
||||
.st11 {fill:none;stroke:#a5a5a5;stroke-width:0.25}
|
||||
.st12 {fill:#50e6ff;stroke:none;stroke-width:12.75}
|
||||
.st13 {fill:#32b0e7;stroke:none;stroke-width:12.75}
|
||||
.st14 {fill:#0078d4;stroke:none;stroke-width:12.75}
|
||||
.st15 {fill:#ffffff;stroke:#a5a5a5;stroke-width:0.25}
|
||||
.st16 {fill:#59b4d9;stroke:none;stroke-width:1.62093}
|
||||
.st17 {fill:#a0a1a2;stroke:none;stroke-width:1.62093}
|
||||
.st18 {fill:#ffffff;fill-opacity:0.2;stroke:none;stroke-width:1.62093}
|
||||
.st19 {fill:#ffffff;stroke:none;stroke-width:1.62093}
|
||||
.st20 {fill:none;fill-rule:evenodd;font-size:12px;overflow:visible;stroke-linecap:square;stroke-miterlimit:3}
|
||||
]]>
|
||||
</style>
|
||||
|
||||
<defs id="Markers">
|
||||
<g id="lend4">
|
||||
<path d="M 2 1 L 0 0 L 2 -1 L 2 1 " style="stroke:none"/>
|
||||
</g>
|
||||
<marker id="mrkr4-16" class="st5" v:arrowType="4" v:arrowSize="2" v:setback="5.12" refX="5.12" orient="auto"
|
||||
markerUnits="strokeWidth" overflow="visible">
|
||||
<use xlink:href="#lend4" transform="scale(2.68) "/>
|
||||
</marker>
|
||||
<marker id="mrkr4-39" class="st5" v:arrowType="4" v:arrowSize="2" v:setback="5.36" refX="-5.36" orient="auto"
|
||||
markerUnits="strokeWidth" overflow="visible">
|
||||
<use xlink:href="#lend4" transform="scale(-2.68,-2.68) "/>
|
||||
</marker>
|
||||
</defs>
|
||||
<g v:mID="0" v:index="1" v:groupContext="foregroundPage">
|
||||
<title>Page-1</title>
|
||||
<v:pageProperties v:drawingScale="0.0393701" v:pageScale="0.0393701" v:drawingUnits="24" v:shadowOffsetX="9"
|
||||
v:shadowOffsetY="-9"/>
|
||||
<v:layer v:name="Connector" v:index="0"/>
|
||||
<g id="shape1-1" v:mID="1" v:groupContext="shape" transform="translate(220.687,-14.5482)">
|
||||
<title>Sheet.1</title>
|
||||
<rect x="0" y="29.0965" width="67.5" height="212.598" class="st1"/>
|
||||
</g>
|
||||
<g id="shape2-3" v:mID="2" v:groupContext="shape" transform="translate(307.484,-14.5482)">
|
||||
<title>Sheet.2</title>
|
||||
<rect x="0" y="29.0965" width="297.862" height="212.598" class="st1"/>
|
||||
</g>
|
||||
<g id="shape3-5" v:mID="3" v:groupContext="shape" transform="translate(222.669,-199.473)">
|
||||
<title>Sheet.3</title>
|
||||
<desc>Frontend</desc>
|
||||
<v:textBlock v:margins="rect(4,4,4,4)" v:tabSpace="42.5197"/>
|
||||
<v:textRect cx="33.75" cy="234.945" width="67.51" height="13.5"/>
|
||||
<rect x="0" y="228.195" width="67.5" height="13.5" class="st2"/>
|
||||
<text x="12.31" y="237.94" class="st3" v:langID="3072"><v:paragraph v:horizAlign="1"/><v:tabList/>Frontend</text> </g>
|
||||
<g id="shape4-8" v:mID="4" v:groupContext="shape" transform="translate(309.447,-199.473)">
|
||||
<title>Sheet.4</title>
|
||||
<desc>Backend</desc>
|
||||
<v:textBlock v:margins="rect(4,4,4,4)" v:tabSpace="42.5197"/>
|
||||
<v:textRect cx="27.2813" cy="234.945" width="54.57" height="13.5"/>
|
||||
<rect x="0" y="228.195" width="54.5625" height="13.5" class="st2"/>
|
||||
<text x="7.36" y="237.94" class="st3" v:langID="3072"><v:paragraph v:horizAlign="1"/><v:tabList/>Backend</text> </g>
|
||||
<g id="shape11-11" v:mID="11" v:groupContext="shape" transform="translate(315.882,361.579) rotate(-179.665)">
|
||||
<title>Sheet.11</title>
|
||||
<path d="M7.68 241.69 L8.04 241.69 L44.16 241.69" class="st4"/>
|
||||
</g>
|
||||
<g id="shape12-17" v:mID="12" v:groupContext="shape" transform="translate(0.375,-79.8197)">
|
||||
<title>Sheet.12</title>
|
||||
<desc>Client Apps (NPIS Web/Mobile)</desc>
|
||||
<v:textBlock v:margins="rect(4,4,4,4)" v:tabSpace="42.5197"/>
|
||||
<v:textRect cx="51.5624" cy="234.445" width="103.13" height="14.5"/>
|
||||
<rect x="0" y="227.195" width="103.125" height="14.5" class="st2"/>
|
||||
<text x="26.31" y="231.44" class="st6" v:langID="3072"><v:paragraph v:horizAlign="1"/><v:tabList/>Client<tspan
|
||||
class="st7" v:langID="2057"> </tspan><tspan class="st7" v:langID="2057">Apps<v:newlineChar/></tspan><tspan
|
||||
x="9.08" dy="1.2em" class="st7" v:langID="2057">(NPIS Web/Mobile)</tspan></text> </g>
|
||||
<g id="shape13-23" v:mID="13" v:groupContext="shape" transform="translate(209.437,-0.375)">
|
||||
<title>Virtual Network Box</title>
|
||||
<rect x="0" y="0.749997" width="410.082" height="240.945" rx="4.5" ry="4.5" class="st8"/>
|
||||
</g>
|
||||
<g id="shape15-25" v:mID="15" v:groupContext="shape" transform="translate(209.437,-81.8687)">
|
||||
<title>Sheet.15</title>
|
||||
<desc>Reverse Proxy</desc>
|
||||
<v:textBlock v:margins="rect(4,4,4,4)" v:tabSpace="42.5197"/>
|
||||
<v:textRect cx="45.5625" cy="229.267" width="91.13" height="24.8556"/>
|
||||
<rect x="0" y="216.839" width="91.125" height="24.8556" class="st2"/>
|
||||
<text x="14.92" y="232.27" class="st6" v:langID="2057"><v:paragraph v:horizAlign="1"/><v:tabList/>Reverse Proxy</text> </g>
|
||||
<g id="group18-28" transform="translate(237.984,-105.611)" v:mID="18" v:groupContext="group">
|
||||
<title>Sheet.18</title>
|
||||
<g id="shape19-29" v:mID="19" v:groupContext="shape">
|
||||
<title>Sheet.19</title>
|
||||
<ellipse cx="16.4537" cy="225.241" rx="16.4537" ry="16.4537" class="st9"/>
|
||||
</g>
|
||||
<g id="shape20-31" v:mID="20" v:groupContext="shape" transform="translate(8.45502,-7.23612)">
|
||||
<title>Sheet.20</title>
|
||||
<rect v:rectContext="foreign" x="0" y="223.26" width="15.9975" height="18.4352" class="st2"/>
|
||||
<switch>
|
||||
<foreignObject x="0" y="223.26" width="15.9975" height="18.4352"
|
||||
requiredExtensions="http://schemas.microsoft.com/visio/2003/SVGExtensions/">
|
||||
<v:foreignData v:orgSize="1484" v:data="data:metafile;base64,eNqt0r1PFEEYBvBnOW5yvnCKYCGhARU9w1cQNCGgUSN
|
||||
2Vha3BUHvjkPUIwalwYqTIEJoaEwQA0QLLYwF/hlaaHlE/Rek0NblueXddfbED6Kb/DI7s+/M7DwZB8AkjcSALQdYY9t
|
||||
bBXy7CSwOACcngNIloHnwymXAwbs40MP6akqSC33KA5x7nmts8fUCRnAHWeTRjKuYwj3uksc4W+Ag1VKC6vWd0yBUhx9
|
||||
PbUV/n/Yb+X8ZqtH+G3pLDTqHn3CCDuu6/nO/x29arf2uUa/Wt2tZ0Max+9Nq7dGvZ2jS/5jlAU6bnUweaaZHWLiumZb
|
||||
rPsmYCXyUW2ZTbpuSFCIWZDk0L0/MnKyYWZqhIvvTHLd1c06gi+t1ct0Orn9W/29A23OaydpDx5eZ+u6V7ZZbTM/bkj4
|
||||
VOXd5PGVl+LsMXlGRE744Oxkc5QbH/Jr38cAczdOCfIgoiRfaFDArh5nFzGepJkOJCjlLnkb9jNdlMLRqWZGLoX/JKbx
|
||||
fj/t+ul8pK7M/3ZWc5vRAc2qqyGmGijTNbGzdzCfQxZw6mVMHc2pnTm3MqY3ZROUsedaN/re74nnenu5KgRm4msFXuss
|
||||
JVVx4iW0L2zN+zbC5IVmToSFKs58Wt0K9Jcm6hMnRGI2LmAk5YCb5LbAauQsNv5A0zzn/Jb2mDfY3OB7lWoZZlzUv6Bk
|
||||
9letmWYZMQY5b3NDf5p2y8rbv0346pLnX6fs23N7Y/A=="/>
|
||||
</foreignObject>
|
||||
<svg viewBox="868 496 59.008 68" enable-background="new" color-interpolation-filters="sRGB" height="18.4352"
|
||||
preserveAspectRatio="none" width="15.9975" x="0" y="223.26">
|
||||
<defs>
|
||||
<clipPath id="mfid7">
|
||||
<rect id="mfid8" x="868" y="496" width="59.008" height="68"/>
|
||||
</clipPath>
|
||||
</defs>
|
||||
<g clip-path="url(#mfid7)">
|
||||
<defs>
|
||||
<g id="mfid9">
|
||||
<path transform="matrix(0.33333, 0, 0, 0.33333, 0, 0)"
|
||||
d="M2693,1589 C2781,1640 2781,1640 2781,1640 C2780,1642 2778,1643 2777,1644 C2777,1644 2777,1644 2777,1644 C2698,1689 2698,1689 2698,1689 C2697,1690 2695,1691 2693,1691 C2691,1691 2689,1690 2688,1689 C2688,1689 2688,1689 2688,1689 C2609,1644 2609,1644 2609,1644 C2607,1643 2606,1642 2605,1640 Z"/>
|
||||
</g>
|
||||
</defs>
|
||||
<g transform="matrix(0.33333, 0, 0, 0.33333, 0, 0)">
|
||||
<g stroke-width="8.2993" stroke="none" fill="#007a33">
|
||||
<use xlink:href="#mfid9" transform="matrix(3, -0, -0, 3, -0, 0)" stroke="none"/>
|
||||
</g>
|
||||
</g>
|
||||
<defs>
|
||||
<g id="mfid10">
|
||||
<path transform="matrix(0.33333, 0, 0, 0.33333, 0, 0)"
|
||||
d="M2693,1589 C2693,1488 2693,1488 2693,1488 C2695,1488 2697,1488 2698,1489 C2698,1489 2698,1489 2698,1489 C2777,1535 2777,1535 2777,1535 C2778,1536 2780,1537 2781,1539 C2782,1540 2782,1542 2782,1544 C2782,1544 2782,1544 2782,1544 C2782,1635 2782,1635 2782,1635 C2782,1637 2782,1638 2781,1640 C2720,1605 2720,1605 2720,1605 C2718,1605 2718,1605 2718,1605 C2715,1602 2715,1602 2715,1602 Z"/>
|
||||
</g>
|
||||
</defs>
|
||||
<g transform="matrix(0.33333, 0, 0, 0.33333, 0, 0)">
|
||||
<g stroke-width="8.2993" stroke="none" fill="#215732">
|
||||
<use xlink:href="#mfid10" transform="matrix(3, -0, -0, 3, -0, 0)" stroke="none"/>
|
||||
</g>
|
||||
</g>
|
||||
<defs>
|
||||
<g id="mfid11">
|
||||
<path transform="matrix(0.33333, 0, 0, 0.33333, 0, 0)"
|
||||
d="M2693,1589 C2693,1488 2693,1488 2693,1488 C2691,1488 2689,1488 2688,1489 C2688,1489 2688,1489 2688,1489 C2609,1535 2609,1535 2609,1535 C2607,1536 2606,1537 2605,1539 C2604,1540 2603,1542 2603,1544 C2603,1544 2603,1544 2603,1544 C2603,1635 2603,1635 2603,1635 C2603,1637 2604,1638 2605,1640 Z"/>
|
||||
</g>
|
||||
</defs>
|
||||
<g transform="matrix(0.33333, 0, 0, 0.33333, 0, 0)">
|
||||
<g stroke-width="8.2993" stroke="none" fill="#009639">
|
||||
<use xlink:href="#mfid11" transform="matrix(3, -0, -0, 3, -0, 0)" stroke="none"/>
|
||||
</g>
|
||||
</g>
|
||||
<defs>
|
||||
<g id="mfid12">
|
||||
<path transform="matrix(0.33333, 0, 0, 0.33333, 0, 0)"
|
||||
d="M2668,1624 C2668,1630 2663,1634 2657,1634 C2652,1634 2647,1630 2647,1624 C2647,1624 2647,1624 2647,1624 C2647,1554 2647,1554 2647,1554 C2647,1549 2652,1544 2659,1544 C2664,1544 2669,1546 2673,1551 C2676,1554 2676,1554 2676,1554 C2718,1605 2718,1605 2718,1605 C2718,1555 2718,1555 2718,1555 C2718,1555 2718,1555 2718,1555 C2718,1549 2723,1544 2728,1544 C2734,1544 2738,1549 2738,1555 C2738,1555 2738,1555 2738,1555 C2738,1624 2738,1624 2738,1624 C2738,1630 2734,1634 2727,1634 C2722,1634 2716,1632 2713,1628 C2668,1574 2668,1574 2668,1574 C2668,1624 2668,1624 2668,1624 Z"/>
|
||||
</g>
|
||||
</defs>
|
||||
<g transform="matrix(0.33333, 0, 0, 0.33333, 0, 0)">
|
||||
<g stroke-width="8.2993" stroke="none" fill="#ffffff">
|
||||
<use xlink:href="#mfid12" transform="matrix(3, -0, -0, 3, -0, 0)" stroke="none"/>
|
||||
</g>
|
||||
</g>
|
||||
</g>
|
||||
</svg>
|
||||
</switch>
|
||||
<rect v:rectContext="foreign" x="0" y="223.26" width="15.9975" height="18.4352" class="st2"/>
|
||||
</g>
|
||||
</g>
|
||||
<g id="shape69-34" v:mID="69" v:groupContext="shape" v:layerMember="0"
|
||||
transform="translate(68.0962,-120.531) rotate(-0.0699135)">
|
||||
<title>Directed line 1.1072</title>
|
||||
<v:userDefs>
|
||||
<v:ud v:nameU="visVersion" v:val="VT0(15):26"/>
|
||||
</v:userDefs>
|
||||
<path d="M0 241.69 L129.23 241.69" class="st10"/>
|
||||
</g>
|
||||
<g id="group119-40" transform="translate(406.921,-28.7215)" v:mID="119" v:groupContext="group">
|
||||
<title>Sheet.119</title>
|
||||
<g id="shape120-41" v:mID="120" v:groupContext="shape">
|
||||
<title>Sheet.120</title>
|
||||
<ellipse cx="17.4375" cy="224.257" rx="17.4375" ry="17.4375" class="st11"/>
|
||||
</g>
|
||||
<g id="group121-43" transform="translate(8.2577,-6.80847)" v:mID="121" v:groupContext="group">
|
||||
<title>Sheet.121</title>
|
||||
<g id="shape122-44" v:mID="122" v:groupContext="shape">
|
||||
<title>Sheet.122</title>
|
||||
<path d="M18.36 236.38 L18.36 225.75 L9.18 220.44 L0 225.75 L0 236.38 L9.18 241.69 L18.36 236.38 Z"
|
||||
class="st12"/>
|
||||
</g>
|
||||
<g id="shape123-46" v:mID="123" v:groupContext="shape" transform="translate(3.59712E-14,-10.0964)">
|
||||
<title>Sheet.123</title>
|
||||
<path d="M18.36 235.85 L9.18 230.53 L0 235.85 L9.18 241.69 L18.36 235.85 Z" class="st13"/>
|
||||
</g>
|
||||
<g id="shape124-48" v:mID="124" v:groupContext="shape" transform="translate(9.17976,0)">
|
||||
<title>Sheet.124</title>
|
||||
<path d="M9.18 236.38 L9.18 225.75 L0 231.31 L0 241.69 L9.18 236.38 Z" class="st14"/>
|
||||
</g>
|
||||
</g>
|
||||
</g>
|
||||
<g id="group125-50" transform="translate(456.824,-145.837)" v:mID="125" v:groupContext="group">
|
||||
<title>Sheet.125</title>
|
||||
<g id="shape126-51" v:mID="126" v:groupContext="shape">
|
||||
<title>Sheet.126</title>
|
||||
<ellipse cx="17.4375" cy="224.257" rx="17.4375" ry="17.4375" class="st11"/>
|
||||
</g>
|
||||
<g id="group127-53" transform="translate(8.2577,-6.80847)" v:mID="127" v:groupContext="group">
|
||||
<title>Sheet.127</title>
|
||||
<g id="shape128-54" v:mID="128" v:groupContext="shape">
|
||||
<title>Sheet.128</title>
|
||||
<path d="M18.36 236.38 L18.36 225.75 L9.18 220.44 L0 225.75 L0 236.38 L9.18 241.69 L18.36 236.38 Z"
|
||||
class="st12"/>
|
||||
</g>
|
||||
<g id="shape129-56" v:mID="129" v:groupContext="shape" transform="translate(3.59712E-14,-10.0964)">
|
||||
<title>Sheet.129</title>
|
||||
<path d="M18.36 235.85 L9.18 230.53 L0 235.85 L9.18 241.69 L18.36 235.85 Z" class="st13"/>
|
||||
</g>
|
||||
<g id="shape130-58" v:mID="130" v:groupContext="shape" transform="translate(9.17976,0)">
|
||||
<title>Sheet.130</title>
|
||||
<path d="M9.18 236.38 L9.18 225.75 L0 231.31 L0 241.69 L9.18 236.38 Z" class="st14"/>
|
||||
</g>
|
||||
</g>
|
||||
</g>
|
||||
<g id="group131-60" transform="translate(387.074,-105.211)" v:mID="131" v:groupContext="group">
|
||||
<title>Sheet.131</title>
|
||||
<g id="shape132-61" v:mID="132" v:groupContext="shape">
|
||||
<title>Sheet.132</title>
|
||||
<ellipse cx="17.4375" cy="224.257" rx="17.4375" ry="17.4375" class="st11"/>
|
||||
</g>
|
||||
<g id="group133-63" transform="translate(8.2577,-6.80847)" v:mID="133" v:groupContext="group">
|
||||
<title>Sheet.133</title>
|
||||
<g id="shape134-64" v:mID="134" v:groupContext="shape">
|
||||
<title>Sheet.134</title>
|
||||
<path d="M18.36 236.38 L18.36 225.75 L9.18 220.44 L0 225.75 L0 236.38 L9.18 241.69 L18.36 236.38 Z"
|
||||
class="st12"/>
|
||||
</g>
|
||||
<g id="shape135-66" v:mID="135" v:groupContext="shape" transform="translate(3.59712E-14,-10.0964)">
|
||||
<title>Sheet.135</title>
|
||||
<path d="M18.36 235.85 L9.18 230.53 L0 235.85 L9.18 241.69 L18.36 235.85 Z" class="st13"/>
|
||||
</g>
|
||||
<g id="shape136-68" v:mID="136" v:groupContext="shape" transform="translate(9.17976,0)">
|
||||
<title>Sheet.136</title>
|
||||
<path d="M9.18 236.38 L9.18 225.75 L0 231.31 L0 241.69 L9.18 236.38 Z" class="st14"/>
|
||||
</g>
|
||||
</g>
|
||||
</g>
|
||||
<g id="group137-70" transform="translate(319.887,-104.627)" v:mID="137" v:groupContext="group">
|
||||
<title>Sheet.137</title>
|
||||
<g id="shape138-71" v:mID="138" v:groupContext="shape">
|
||||
<title>Sheet.138</title>
|
||||
<ellipse cx="17.4375" cy="224.257" rx="17.4375" ry="17.4375" class="st15"/>
|
||||
</g>
|
||||
<g id="group139-73" transform="translate(8.2577,-6.80847)" v:mID="139" v:groupContext="group">
|
||||
<title>Sheet.139</title>
|
||||
<g id="shape140-74" v:mID="140" v:groupContext="shape">
|
||||
<title>Sheet.140</title>
|
||||
<path d="M18.36 236.38 L18.36 225.75 L9.18 220.44 L0 225.75 L0 236.38 L9.18 241.69 L18.36 236.38 Z"
|
||||
class="st12"/>
|
||||
</g>
|
||||
<g id="shape141-76" v:mID="141" v:groupContext="shape" transform="translate(3.59712E-14,-10.0964)">
|
||||
<title>Sheet.141</title>
|
||||
<path d="M18.36 235.85 L9.18 230.53 L0 235.85 L9.18 241.69 L18.36 235.85 Z" class="st13"/>
|
||||
</g>
|
||||
<g id="shape142-78" v:mID="142" v:groupContext="shape" transform="translate(9.17976,0)">
|
||||
<title>Sheet.142</title>
|
||||
<path d="M9.18 236.38 L9.18 225.75 L0 231.31 L0 241.69 L9.18 236.38 Z" class="st14"/>
|
||||
</g>
|
||||
</g>
|
||||
</g>
|
||||
<g id="group143-80" transform="translate(406.921,-178.098)" v:mID="143" v:groupContext="group">
|
||||
<title>Sheet.143</title>
|
||||
<g id="shape144-81" v:mID="144" v:groupContext="shape">
|
||||
<title>Sheet.144</title>
|
||||
<ellipse cx="17.4375" cy="224.257" rx="17.4375" ry="17.4375" class="st11"/>
|
||||
</g>
|
||||
<g id="group145-83" transform="translate(8.2577,-6.80847)" v:mID="145" v:groupContext="group">
|
||||
<title>Sheet.145</title>
|
||||
<g id="shape146-84" v:mID="146" v:groupContext="shape">
|
||||
<title>Sheet.146</title>
|
||||
<path d="M18.36 236.38 L18.36 225.75 L9.18 220.44 L0 225.75 L0 236.38 L9.18 241.69 L18.36 236.38 Z"
|
||||
class="st12"/>
|
||||
</g>
|
||||
<g id="shape147-86" v:mID="147" v:groupContext="shape" transform="translate(3.59712E-14,-10.0964)">
|
||||
<title>Sheet.147</title>
|
||||
<path d="M18.36 235.85 L9.18 230.53 L0 235.85 L9.18 241.69 L18.36 235.85 Z" class="st13"/>
|
||||
</g>
|
||||
<g id="shape148-88" v:mID="148" v:groupContext="shape" transform="translate(9.17976,0)">
|
||||
<title>Sheet.148</title>
|
||||
<path d="M9.18 236.38 L9.18 225.75 L0 231.31 L0 241.69 L9.18 236.38 Z" class="st14"/>
|
||||
</g>
|
||||
</g>
|
||||
</g>
|
||||
<g id="group149-90" transform="translate(35.4836,-106.151)" v:mID="149" v:groupContext="group">
|
||||
<title>Browser</title>
|
||||
<g id="shape150-91" v:mID="150" v:groupContext="shape">
|
||||
<title>path337</title>
|
||||
<path d="M-0 240.38 A1.3201 1.3201 -180 0 0 1.32 241.69 L31.59 241.69 A1.3201 1.3201 -180 0 0 32.91 240.38 L32.91
|
||||
219.78 L0 219.78 L0 240.38 Z" class="st16"/>
|
||||
</g>
|
||||
<g id="shape151-93" v:mID="151" v:groupContext="shape" transform="translate(0,-20.4706)">
|
||||
<title>path339</title>
|
||||
<path d="M31.59 233.41 L1.32 233.41 A1.3201 1.3201 -180 0 0 -0 234.72 L0 241.69 L32.91 241.69 L32.91 234.72 A1.3201
|
||||
1.3201 -180 0 0 31.59 233.41 Z" class="st17"/>
|
||||
</g>
|
||||
<g id="shape152-95" v:mID="152" v:groupContext="shape" transform="translate(3.29736E-13,-0.724179)">
|
||||
<title>path341</title>
|
||||
<path d="M1.32 213.66 A1.3201 1.3201 -180 0 0 0 214.97 L0 240.38 A1.3201 1.3201 -180 0 0 1.32 241.69 L2.76 241.69
|
||||
L28.7 213.66 L1.32 213.66 Z" class="st18"/>
|
||||
</g>
|
||||
<g id="shape153-97" v:mID="153" v:groupContext="shape" transform="translate(8.49051,-23.0352)">
|
||||
<title>rect343</title>
|
||||
<rect x="0" y="239.128" width="22.1797" height="2.56699" class="st19"/>
|
||||
</g>
|
||||
<g id="shape154-99" v:mID="154" v:groupContext="shape" transform="translate(1.93139,-22.0711)">
|
||||
<title>path345</title>
|
||||
<path d="M5.51 239.41 A3.22523 3.22523 0 1 1 2.28 236.19 A3.23007 3.23007 0 0 1 5.51 239.41 Z" class="st16"/>
|
||||
</g>
|
||||
<g id="shape155-101" v:mID="155" v:groupContext="shape" transform="translate(2.63233,-22.4429)">
|
||||
<title>polygon347</title>
|
||||
<path d="M2.7 241.69 L1.91 241.69 L0 239.85 L1.91 238.01 L2.7 238.01 L1.25 239.52 L4.8 239.52 L4.8 240.18 L1.25 240.18
|
||||
L2.7 241.69 Z" class="st19"/>
|
||||
</g>
|
||||
</g>
|
||||
<g id="shape171-103" v:mID="171" v:groupContext="shape" transform="translate(214.737,-6.04429)">
|
||||
<title>Sheet.171</title>
|
||||
<rect x="0" y="13.2224" width="396.278" height="228.472" class="st1"/>
|
||||
</g>
|
||||
<g id="shape172-105" v:mID="172" v:groupContext="shape" transform="translate(305.187,-86.0876)">
|
||||
<title>Sheet.172</title>
|
||||
<desc>NPIS API microservice</desc>
|
||||
<v:textBlock v:margins="rect(4,4,4,4)" v:tabSpace="42.5197"/>
|
||||
<v:textRect cx="34.7344" cy="234.945" width="69.47" height="13.5"/>
|
||||
<rect x="0" y="228.195" width="69.4688" height="13.5" class="st2"/>
|
||||
<text x="15.48" y="231.95" class="st6" v:langID="2057"><v:paragraph v:horizAlign="1"/><v:tabList/>NPIS API <tspan
|
||||
x="7.23" dy="1.2em" class="st7">microservice</tspan></text> </g>
|
||||
<g id="shape173-109" v:mID="173" v:groupContext="shape" transform="translate(424.264,-114.434)">
|
||||
<title>Sheet.173</title>
|
||||
<desc>NPIS IAM microservice</desc>
|
||||
<v:textBlock v:margins="rect(4,4,4,4)" v:tabSpace="42.5197"/>
|
||||
<v:textRect cx="55.1077" cy="234.945" width="110.22" height="13.5"/>
|
||||
<rect x="0" y="228.195" width="110.215" height="13.5" class="st2"/>
|
||||
<text x="5.3" y="237.94" class="st6" v:langID="2057"><v:paragraph v:horizAlign="1"/><v:tabList/>NPIS IAM microservice</text> </g>
|
||||
<g id="shape174-112" v:mID="174" v:groupContext="shape" transform="translate(384.243,360.521) rotate(180)">
|
||||
<title>Sheet.174</title>
|
||||
<path d="M7.68 241.69 L8.04 241.69 L28.5 241.69" class="st4"/>
|
||||
</g>
|
||||
<g id="shape175-117" v:mID="175" v:groupContext="shape" transform="translate(651.868,133.291) rotate(105.121)">
|
||||
<title>Sheet.175</title>
|
||||
<path d="M7.68 241.69 L8.04 241.69 L28.99 241.69" class="st4"/>
|
||||
</g>
|
||||
<g id="shape176-122" v:mID="176" v:groupContext="shape" transform="translate(179.046,213.689) rotate(-100.305)">
|
||||
<title>Sheet.176</title>
|
||||
<path d="M7.68 241.69 L8.04 241.69 L31.69 241.69" class="st4"/>
|
||||
</g>
|
||||
<g id="shape177-127" v:mID="177" v:groupContext="shape" transform="translate(580.367,294.245) rotate(147.2)">
|
||||
<title>Sheet.177</title>
|
||||
<path d="M7.68 241.69 L8.04 241.69 L30.35 241.69" class="st4"/>
|
||||
</g>
|
||||
<g id="shape220-132" v:mID="220" v:groupContext="shape" transform="translate(432.425,-194.039)">
|
||||
<title>Sheet.220</title>
|
||||
<desc>NPIS Forms Engine microservice</desc>
|
||||
<v:textBlock v:margins="rect(4,4,4,4)" v:tabSpace="42.5197"/>
|
||||
<v:textRect cx="55.1077" cy="234.945" width="110.22" height="13.5"/>
|
||||
<rect x="0" y="228.195" width="110.215" height="13.5" class="st2"/>
|
||||
<text x="13.34" y="231.95" class="st6" v:langID="2057"><v:paragraph v:horizAlign="1"/><v:tabList/>NPIS Forms Engine <tspan
|
||||
x="27.61" dy="1.2em" class="st7" v:langID="3072">microservice</tspan></text> </g>
|
||||
<g id="shape222-136" v:mID="222" v:groupContext="shape" transform="translate(426.224,-37.8853)">
|
||||
<title>Sheet.222</title>
|
||||
<desc>NPIS Data Analytics microservice</desc>
|
||||
<v:textBlock v:margins="rect(4,4,4,4)" v:tabSpace="42.5197"/>
|
||||
<v:textRect cx="61.2142" cy="234.945" width="122.43" height="13.5"/>
|
||||
<rect x="0" y="228.195" width="122.428" height="13.5" class="st2"/>
|
||||
<text x="18.09" y="231.95" class="st6" v:langID="2057"><v:paragraph v:horizAlign="1"/><v:tabList/>NPIS Data Analytics <tspan
|
||||
x="33.71" dy="1.2em" class="st7" v:langID="3072">microservice</tspan></text> </g>
|
||||
<g id="shape281-140" v:mID="281" v:groupContext="shape" transform="translate(481.798,-152.302)">
|
||||
<title>Sheet.281</title>
|
||||
<desc>NPIS BPM Workflows microservice</desc>
|
||||
<v:textBlock v:margins="rect(4,4,4,4)" v:tabSpace="42.5197"/>
|
||||
<v:textRect cx="61.2142" cy="234.945" width="122.43" height="13.5"/>
|
||||
<rect x="0" y="228.195" width="122.428" height="13.5" class="st2"/>
|
||||
<text x="14.53" y="231.95" class="st6" v:langID="2057"><v:paragraph v:horizAlign="1"/><v:tabList/>NPIS BPM Workflows <tspan
|
||||
x="33.71" dy="1.2em" class="st7" v:langID="3072">microservice</tspan></text> </g>
|
||||
<g id="group282-144" transform="translate(454.261,-73.852)" v:mID="282" v:groupContext="group">
|
||||
<title>Sheet.282</title>
|
||||
<g id="shape283-145" v:mID="283" v:groupContext="shape">
|
||||
<title>Sheet.283</title>
|
||||
<ellipse cx="17.4375" cy="224.257" rx="17.4375" ry="17.4375" class="st11"/>
|
||||
</g>
|
||||
<g id="group284-147" transform="translate(8.2577,-6.80847)" v:mID="284" v:groupContext="group">
|
||||
<title>Sheet.284</title>
|
||||
<g id="shape285-148" v:mID="285" v:groupContext="shape">
|
||||
<title>Sheet.285</title>
|
||||
<path d="M18.36 236.38 L18.36 225.75 L9.18 220.44 L0 225.75 L0 236.38 L9.18 241.69 L18.36 236.38 Z"
|
||||
class="st12"/>
|
||||
</g>
|
||||
<g id="shape286-150" v:mID="286" v:groupContext="shape" transform="translate(3.59712E-14,-10.0964)">
|
||||
<title>Sheet.286</title>
|
||||
<path d="M18.36 235.85 L9.18 230.53 L0 235.85 L9.18 241.69 L18.36 235.85 Z" class="st13"/>
|
||||
</g>
|
||||
<g id="shape287-152" v:mID="287" v:groupContext="shape" transform="translate(9.17976,0)">
|
||||
<title>Sheet.287</title>
|
||||
<path d="M9.18 236.38 L9.18 225.75 L0 231.31 L0 241.69 L9.18 236.38 Z" class="st14"/>
|
||||
</g>
|
||||
</g>
|
||||
</g>
|
||||
<g id="shape288-154" v:mID="288" v:groupContext="shape" transform="translate(291.147,333.257) rotate(-139.086)">
|
||||
<title>Sheet.288</title>
|
||||
<path d="M7.68 241.69 L8.04 241.69 L33.76 241.69" class="st4"/>
|
||||
</g>
|
||||
<g id="shape289-159" v:mID="289" v:groupContext="shape" transform="translate(481.907,-81.1509)">
|
||||
<title>Sheet.289</title>
|
||||
<desc>NPIS Documents microservice</desc>
|
||||
<v:textBlock v:margins="rect(4,4,4,4)" v:tabSpace="42.5197"/>
|
||||
<v:textRect cx="51.5624" cy="234.945" width="103.13" height="13.5"/>
|
||||
<rect x="0" y="228.195" width="103.125" height="13.5" class="st2"/>
|
||||
<text x="14.52" y="231.95" class="st6" v:langID="2057"><v:paragraph v:horizAlign="1"/><v:tabList/>NPIS Documents <tspan
|
||||
x="24.06" dy="1.2em" class="st7" v:langID="3072">microservice</tspan></text> </g>
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 25 KiB |
BIN
static/img/npis-microservice-architecture.jpg
Executable file
|
After Width: | Height: | Size: 544 KiB |
BIN
static/img/npis-microservice-architecture.png
Executable file
|
After Width: | Height: | Size: 1.1 MiB |
10288
static/img/npis-microservice-architecture.svg
Executable file
|
After Width: | Height: | Size: 866 KiB |
BIN
static/img/npis_microservice_architecture.jpg
Executable file
|
After Width: | Height: | Size: 594 KiB |
55
static/img/onboarding.svg
Normal file
@@ -0,0 +1,55 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- Uploaded to: SVG Repo, www.svgrepo.com, Generator: SVG Repo Mixer Tools -->
|
||||
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
|
||||
viewBox="0 0 512 512" xml:space="preserve">
|
||||
<path style="fill:#E4EAF8;" d="M370.759,375.172H17.655C7.904,375.172,0,367.268,0,357.517V57.379
|
||||
c0-9.751,7.904-17.655,17.655-17.655h353.103c9.751,0,17.655,7.904,17.655,17.655v300.138
|
||||
C388.414,367.268,380.51,375.172,370.759,375.172z"/>
|
||||
<path style="fill:#D5DCED;" d="M176.552,375.172h194.207c9.751,0,17.655-7.904,17.655-17.655V251.586H220.69
|
||||
c-24.376,0-44.138,19.762-44.138,44.138V375.172z"/>
|
||||
<path style="fill:#0096DC;" d="M247.172,269.241H44.138c-4.875,0-8.828-3.953-8.828-8.828V119.172c0-4.875,3.953-8.828,8.828-8.828
|
||||
h203.034c4.875,0,8.828,3.953,8.828,8.828v141.241C256,265.289,252.047,269.241,247.172,269.241z"/>
|
||||
<path style="fill:#D5DCED;" d="M370.759,39.724H35.31v26.483c0,4.875,3.953,8.828,8.828,8.828h344.276V57.379
|
||||
C388.414,47.628,380.51,39.724,370.759,39.724z"/>
|
||||
<path style="fill:#FFDC64;" d="M291.31,163.31h61.793c4.875,0,8.828-3.953,8.828-8.828v-35.31c0-4.875-3.953-8.828-8.828-8.828
|
||||
H291.31c-4.875,0-8.828,3.953-8.828,8.828v35.31C282.483,159.358,286.435,163.31,291.31,163.31z"/>
|
||||
<path style="fill:#00C3FF;" d="M291.31,242.759h61.793c4.875,0,8.828-3.953,8.828-8.828v-35.31c0-4.875-3.953-8.828-8.828-8.828
|
||||
H291.31c-4.875,0-8.828,3.953-8.828,8.828v35.31C282.483,238.806,286.435,242.759,291.31,242.759z"/>
|
||||
<path style="fill:#707487;" d="M158.897,313.379H44.138c-4.879,0-8.828-3.953-8.828-8.828s3.948-8.828,8.828-8.828h114.759
|
||||
c4.879,0,8.828,3.953,8.828,8.828S163.776,313.379,158.897,313.379z"/>
|
||||
<g>
|
||||
<path style="fill:#959CB5;" d="M61.793,348.69H44.138c-4.879,0-8.828-3.953-8.828-8.828s3.948-8.828,8.828-8.828h17.655
|
||||
c4.879,0,8.828,3.953,8.828,8.828S66.673,348.69,61.793,348.69z"/>
|
||||
<path style="fill:#959CB5;" d="M132.414,348.69h-35.31c-4.879,0-8.828-3.953-8.828-8.828s3.948-8.828,8.828-8.828h35.31
|
||||
c4.879,0,8.828,3.953,8.828,8.828S137.293,348.69,132.414,348.69z"/>
|
||||
</g>
|
||||
<path style="fill:#00C3FF;" d="M273.655,269.241l-37.896-37.896c-5.561-5.561-15.07-1.622-15.07,6.242v31.654l0,0
|
||||
c-14.626,0-26.483,11.857-26.483,26.483v150.069c0,14.626,11.857,26.483,26.483,26.483h264.828
|
||||
c14.626,0,26.483-11.857,26.483-26.483V295.724c0-14.626-11.857-26.483-26.483-26.483H273.655z"/>
|
||||
<path style="fill:#F0C087;" d="M185.379,269.241v-19.591c0-8.102-5.514-15.164-13.373-17.128l-15.251-3.812
|
||||
c-3.929-0.982-6.687-4.513-6.687-8.564v-6.319c5.255-3.058,8.828-8.689,8.828-15.207v-30.897c0-12.189-9.88-22.069-22.069-22.069
|
||||
H128c-12.189,0-22.069,9.88-22.069,22.069v30.897c0,6.518,3.573,12.148,8.828,15.207v6.319c0,4.051-2.756,7.582-6.687,8.564
|
||||
l-15.251,3.812c-7.859,1.965-13.373,9.026-13.373,17.128v19.591"/>
|
||||
<path style="fill:#694B4B;" d="M136.828,145.655H128c-12.189,0-22.069,9.88-22.069,22.069v13.241c0,0,26.483,0,52.966-8.828v-4.414
|
||||
C158.897,155.535,149.016,145.655,136.828,145.655z"/>
|
||||
<rect x="317.793" y="39.724" style="fill:#FFF082;" width="35.31" height="35.31"/>
|
||||
<rect x="282.483" y="39.724" style="fill:#FF5050;" width="35.31" height="35.31"/>
|
||||
<path style="fill:#A0FFB4;" d="M388.414,75.034h-35.31v-35.31h17.655c9.751,0,17.655,7.904,17.655,17.655V75.034z"/>
|
||||
<g>
|
||||
<path style="fill:#5B5D6E;" d="M172.006,232.523l-12.22-3.054c-6.444,8.058-16.246,13.29-27.372,13.29
|
||||
c-11.126,0-20.928-5.231-27.373-13.29l-12.22,3.054c-7.859,1.964-13.373,9.026-13.373,17.128v19.591h105.931v-19.591
|
||||
C185.379,241.549,179.865,234.487,172.006,232.523z"/>
|
||||
<path style="fill:#5B5D6E;" d="M291.272,356.284v52.966c0,4.875,3.953,8.828,8.828,8.828H406.03c4.875,0,8.828-3.953,8.828-8.828
|
||||
v-52.966H291.272z"/>
|
||||
</g>
|
||||
<g>
|
||||
<path style="fill:#464655;" d="M450.168,348.672l-17.655,0.018l0.086,61.802c0.009,4.871,3.957,8.819,8.828,8.819h0.009
|
||||
c4.879-0.009,8.828-3.966,8.819-8.836L450.168,348.672z"/>
|
||||
<path style="fill:#464655;" d="M291.272,384.559l48.146,12.839c4.45,1.186,9.042,1.789,13.647,1.789s9.197-0.601,13.647-1.789
|
||||
l48.146-12.839v-28.276H291.272V384.559z"/>
|
||||
</g>
|
||||
<path style="fill:#707487;" d="M343.967,314.571l-112.263,29.937c-3.019,0.806-3.019,5.09,0,5.895l112.263,29.937
|
||||
c5.961,1.59,12.235,1.59,18.196,0l112.263-29.937c3.019-0.806,3.019-5.09,0-5.895l-112.263-29.937
|
||||
C356.202,312.982,349.928,312.982,343.967,314.571z"/>
|
||||
<circle style="fill:#5B5D6E;" cx="441.335" cy="436.966" r="8.828"/>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 4.3 KiB |
BIN
static/img/project.png
Normal file
|
After Width: | Height: | Size: 33 KiB |
BIN
static/img/shortcut.png
Executable file
|
After Width: | Height: | Size: 80 KiB |
BIN
static/img/staff_development.png
Normal file
|
After Width: | Height: | Size: 48 KiB |
76
static/img/tests.svg
Normal file
@@ -0,0 +1,76 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- Uploaded to: SVG Repo, www.svgrepo.com, Generator: SVG Repo Mixer Tools -->
|
||||
<svg height="800px" width="800px" version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
|
||||
viewBox="0 0 512 512" xml:space="preserve">
|
||||
<circle style="fill:#F5DCB4;" cx="180.966" cy="167.724" r="167.724"/>
|
||||
<path style="fill:#EBC9A0;" d="M342.624,123.586h-11.895c-3.777,0-7.039-2.443-8.301-6.003
|
||||
C299.788,53.71,235.149,9.714,161.698,18.857C93.805,27.309,39.362,82.618,31.844,150.621
|
||||
c-10.009,90.54,60.607,167.172,149.121,167.172c8.582,0,16.962-0.799,25.132-2.229c5.337-0.935,10.178,3.266,10.178,8.685v7.403
|
||||
c75.663-16.225,132.414-83.42,132.414-163.928C348.69,152.423,346.463,137.672,342.624,123.586z"/>
|
||||
<circle style="fill:#FFFFFF;" cx="180.966" cy="167.724" r="132.414"/>
|
||||
<g>
|
||||
<circle style="fill:#E4EAF8;" cx="180.966" cy="167.724" r="35.31"/>
|
||||
<path style="fill:#E4EAF8;" d="M428.138,141.241H251.586c-9.75,0-17.655,7.904-17.655,17.655v335.448
|
||||
c0,9.75,7.905,17.655,17.655,17.655h229.517c9.75,0,17.655-7.905,17.655-17.655V211.862L428.138,141.241z"/>
|
||||
</g>
|
||||
<path style="fill:#D5DCED;" d="M428.138,141.241v52.966c0,9.75,7.905,17.655,17.655,17.655h52.966L428.138,141.241z"/>
|
||||
<path style="fill:#707487;" d="M454.621,344.276h-79.448c-4.879,0-8.828-3.953-8.828-8.828s3.948-8.828,8.828-8.828h79.448
|
||||
c4.879,0,8.828,3.953,8.828,8.828S459.5,344.276,454.621,344.276z"/>
|
||||
<path style="fill:#959CB5;" d="M436.966,379.586h-61.793c-4.879,0-8.828-3.953-8.828-8.828c0-4.875,3.948-8.828,8.828-8.828h61.793
|
||||
c4.879,0,8.828,3.953,8.828,8.828C445.793,375.634,441.845,379.586,436.966,379.586z"/>
|
||||
<path style="fill:#464655;" d="M304.552,379.586c-2.259,0-4.518-0.862-6.241-2.586l-26.483-26.483
|
||||
c-3.448-3.448-3.448-9.035,0-12.483c3.448-3.448,9.035-3.448,12.483,0l20.241,20.243l29.069-29.069
|
||||
c3.448-3.448,9.035-3.448,12.483,0s3.448,9.035,0,12.483l-35.31,35.31C309.069,378.724,306.81,379.586,304.552,379.586z"/>
|
||||
<path style="fill:#707487;" d="M454.621,256h-79.448c-4.879,0-8.828-3.953-8.828-8.828s3.948-8.828,8.828-8.828h79.448
|
||||
c4.879,0,8.828,3.953,8.828,8.828S459.5,256,454.621,256z"/>
|
||||
<path style="fill:#959CB5;" d="M436.966,291.31h-61.793c-4.879,0-8.828-3.953-8.828-8.828s3.948-8.828,8.828-8.828h61.793
|
||||
c4.879,0,8.828,3.953,8.828,8.828S441.845,291.31,436.966,291.31z"/>
|
||||
<path style="fill:#464655;" d="M304.552,291.31c-2.259,0-4.518-0.862-6.241-2.586l-26.483-26.483c-3.448-3.448-3.448-9.035,0-12.483
|
||||
s9.035-3.448,12.483,0l20.241,20.243l29.069-29.069c3.448-3.448,9.035-3.448,12.483,0s3.448,9.035,0,12.483l-35.31,35.31
|
||||
C309.069,290.449,306.81,291.31,304.552,291.31z"/>
|
||||
<path style="fill:#707487;" d="M454.621,432.552h-79.448c-4.879,0-8.828-3.953-8.828-8.828c0-4.875,3.948-8.828,8.828-8.828h79.448
|
||||
c4.879,0,8.828,3.953,8.828,8.828C463.448,428.599,459.5,432.552,454.621,432.552z"/>
|
||||
<path style="fill:#959CB5;" d="M436.966,467.862h-61.793c-4.879,0-8.828-3.953-8.828-8.828s3.948-8.828,8.828-8.828h61.793
|
||||
c4.879,0,8.828,3.953,8.828,8.828S441.845,467.862,436.966,467.862z"/>
|
||||
<g>
|
||||
<path style="fill:#464655;" d="M304.552,467.862c-2.259,0-4.518-0.862-6.241-2.586l-26.483-26.483
|
||||
c-3.448-3.448-3.448-9.035,0-12.483s9.035-3.448,12.483,0l20.241,20.243l29.069-29.069c3.448-3.448,9.035-3.448,12.483,0
|
||||
s3.448,9.035,0,12.483l-35.31,35.31C309.069,467,306.81,467.862,304.552,467.862z"/>
|
||||
<path style="fill:#464655;" d="M180.966,176.552c-2.259,0-4.518-0.862-6.241-2.586l-70.621-70.621
|
||||
c-3.448-3.448-3.448-9.035,0-12.483c3.448-3.448,9.035-3.448,12.483,0l64.378,64.381l73.207-73.207
|
||||
c3.448-3.448,9.035-3.448,12.483,0c3.448,3.448,3.448,9.035,0,12.483l-79.448,79.448
|
||||
C185.483,175.69,183.224,176.552,180.966,176.552z"/>
|
||||
</g>
|
||||
<g>
|
||||
<path style="fill:#707487;" d="M392.828,203.034H278.069c-4.879,0-8.828-3.953-8.828-8.828s3.948-8.828,8.828-8.828h114.759
|
||||
c4.879,0,8.828,3.953,8.828,8.828S397.707,203.034,392.828,203.034z"/>
|
||||
<circle style="fill:#707487;" cx="180.966" cy="167.724" r="17.655"/>
|
||||
</g>
|
||||
<g>
|
||||
<path style="fill:#D5DCED;" d="M85.992,102.702l-15.028-8.68c-3.272,4.874-6.111,10.042-8.723,15.345l14.923,8.619
|
||||
c1.388,0.806,2.905,1.185,4.405,1.185c3.052,0,6.017-1.582,7.656-4.414C91.663,110.539,90.216,105.138,85.992,102.702z"/>
|
||||
<path style="fill:#D5DCED;" d="M115.939,72.755c1.638,2.831,4.604,4.414,7.656,4.414c1.5,0,3.017-0.38,4.405-1.181
|
||||
c4.224-2.44,5.673-7.84,3.233-12.061l-8.62-14.93c-5.305,2.613-10.476,5.453-15.351,8.727L115.939,72.755z"/>
|
||||
</g>
|
||||
<g>
|
||||
<path style="fill:#C7CFE2;" d="M48.998,176.552h17.209c4.879,0,8.828-3.953,8.828-8.828s-3.948-8.828-8.828-8.828H48.998
|
||||
c-0.194,2.931-0.446,5.847-0.446,8.828S48.803,173.621,48.998,176.552z"/>
|
||||
<path style="fill:#C7CFE2;" d="M180.966,35.31c-2.98,0-5.897,0.252-8.828,0.446v17.209c0,4.875,3.948,8.828,8.828,8.828
|
||||
s8.828-3.953,8.828-8.828V35.756C186.862,35.562,183.946,35.31,180.966,35.31z"/>
|
||||
</g>
|
||||
<g>
|
||||
<path style="fill:#D5DCED;" d="M77.164,217.461l-14.923,8.619c2.612,5.303,5.451,10.472,8.723,15.345l15.028-8.68
|
||||
c4.224-2.435,5.673-7.837,3.233-12.056C86.784,216.466,81.37,215.009,77.164,217.461z"/>
|
||||
<path style="fill:#D5DCED;" d="M128,259.462c-4.215-2.444-9.621-0.995-12.061,3.233l-8.679,15.03
|
||||
c4.875,3.273,10.046,6.114,15.351,8.727l8.62-14.93C133.673,267.302,132.224,261.901,128,259.462z"/>
|
||||
</g>
|
||||
<path style="fill:#C7CFE2;" d="M180.966,273.655c-4.879,0-8.828,3.953-8.828,8.828v17.209c2.931,0.194,5.847,0.446,8.828,0.446
|
||||
s5.897-0.252,8.828-0.446v-17.209C189.793,277.608,185.845,273.655,180.966,273.655z"/>
|
||||
<g>
|
||||
<path style="fill:#D5DCED;" d="M239.318,48.998l-8.62,14.93c-2.44,4.22-0.991,9.621,3.233,12.061
|
||||
c1.388,0.802,2.905,1.181,4.405,1.181c3.052,0,6.017-1.582,7.656-4.414l8.679-15.03C249.794,54.451,244.623,51.61,239.318,48.998z"
|
||||
/>
|
||||
<path style="fill:#D5DCED;" d="M284.767,117.987l14.923-8.619c-2.612-5.303-5.451-10.472-8.723-15.345l-15.028,8.68
|
||||
c-4.224,2.435-5.673,7.837-3.233,12.056c1.638,2.831,4.604,4.414,7.656,4.414C281.863,119.172,283.38,118.793,284.767,117.987z"/>
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 5.8 KiB |
64
static/img/train.svg
Normal file
@@ -0,0 +1,64 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- Uploaded to: SVG Repo, www.svgrepo.com, Generator: SVG Repo Mixer Tools -->
|
||||
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
|
||||
viewBox="0 0 512 512" xml:space="preserve">
|
||||
<path style="fill:#E4EAF8;" d="M344.276,300.138H26.483C11.857,300.138,0,288.281,0,273.655V52.966
|
||||
c0-14.626,11.857-26.483,26.483-26.483h317.793c14.626,0,26.483,11.857,26.483,26.483v220.69
|
||||
C370.759,288.281,358.902,300.138,344.276,300.138z"/>
|
||||
<path style="fill:#C7CFE2;" d="M368.203,132.414h-30.199c-25.724,0-50.104,11.179-66.89,30.67
|
||||
c-16.786,19.492-24.225,45.261-20.409,70.7l9.953,66.354h83.618c14.626,0,26.483-11.857,26.483-26.483V132.552
|
||||
C369.903,132.527,369.062,132.414,368.203,132.414z"/>
|
||||
<rect x="97.103" y="247.172" style="fill:#FF5050;" width="211.862" height="17.655"/>
|
||||
<g>
|
||||
<polygon style="fill:#C84146;" points="255.361,264.828 308.966,264.828 308.966,247.172 252.713,247.172 "/>
|
||||
<path style="fill:#C84146;" d="M97.103,264.828h34.062c0.735-2.837,1.248-5.761,1.248-8.828s-0.513-5.991-1.248-8.828H97.103
|
||||
V264.828z"/>
|
||||
</g>
|
||||
<path style="fill:#C7CFE2;" d="M35.31,247.172c-4.879,0-8.828,3.948-8.828,8.828c0,4.879,3.948,8.828,8.828,8.828h61.793v-17.655
|
||||
H35.31z"/>
|
||||
<g>
|
||||
<circle style="fill:#FF5050;" cx="97.103" cy="256" r="17.655"/>
|
||||
<path style="fill:#FF5050;" d="M238.345,211.862H132.414c-19.501,0-35.31-15.809-35.31-35.31v-70.621
|
||||
c0-19.501,15.809-35.31,35.31-35.31h105.931c19.501,0,35.31,15.809,35.31,35.31v70.621
|
||||
C273.655,196.053,257.846,211.862,238.345,211.862z"/>
|
||||
</g>
|
||||
<path style="fill:#5B5D6E;" d="M491.94,409.881l-85.871-21.468H300.138l-85.871,21.468c-11.789,2.947-20.06,13.54-20.06,25.692
|
||||
v32.289c0,9.75,7.905,17.655,17.655,17.655h282.483c9.75,0,17.655-7.905,17.655-17.655v-32.289
|
||||
C512,423.422,503.73,412.829,491.94,409.881z"/>
|
||||
<rect x="300.138" y="326.621" style="fill:#D29B6E;" width="105.931" height="88.276"/>
|
||||
<path style="fill:#F0C087;" d="M378.124,364.62l35.278-29.398c6.648-5.54,11.031-13.33,12.314-21.888l12.326-82.168
|
||||
c6.404-42.698-26.664-81.097-69.839-81.097h-30.199c-43.176,0-76.244,38.399-69.839,81.097l12.326,82.168
|
||||
c1.283,8.558,5.666,16.348,12.314,21.888l35.278,29.398c4.759,3.966,10.759,6.138,16.953,6.138h16.135
|
||||
C367.366,370.759,373.365,368.587,378.124,364.62z"/>
|
||||
<path style="fill:#E6AF78;" d="M368.203,150.069h-30.199c-43.175,0-76.244,38.399-69.839,81.097l12.326,82.168
|
||||
c1.284,8.558,5.666,16.348,12.314,21.888l35.278,29.398c4.759,3.966,10.759,6.138,16.954,6.138h3.652l-16.478-32.954
|
||||
c-3.678-7.354-5.591-15.464-5.591-23.687v-78.233c6.711-0.64,13.444-1.437,19.801-2.454c3.55,7.433,11.127,12.579,19.882,12.579
|
||||
c1.876,0,3.752-0.242,5.575-0.716c12.794-3.335,43.085-12.949,66.419-32.621C434.368,177.993,405.004,150.069,368.203,150.069z"/>
|
||||
<path style="fill:#FFFFFF;" d="M158.897,120.214v42.054c0,6.562,6.905,10.83,12.776,7.895l42.054-21.027
|
||||
c6.506-3.253,6.506-12.538,0-15.791l-42.054-21.027C165.802,109.384,158.897,113.652,158.897,120.214z"/>
|
||||
<path style="fill:#C7CFE2;" d="M432.552,194.207c0,0,0.218-0.55,0.541-1.363c-10.729-24.903-35.445-42.775-64.889-42.775h-30.199
|
||||
c-39.602,0-70.606,32.323-70.541,70.621h6.193c0,0,61.793,0,88.276-8.828v12.063c0,2.897,2.692,5.014,5.494,4.284
|
||||
C380.074,224.911,411.756,215.002,432.552,194.207z"/>
|
||||
<g>
|
||||
<path style="fill:#AFB9D2;" d="M368.203,150.069h-30.199c-39.602,0-70.606,32.323-70.541,70.621h6.193
|
||||
c0,0,27.097-0.017,53.096-2.581c1.186-32.74,24.588-59.791,55.631-66.444C377.793,150.728,373.097,150.069,368.203,150.069z"/>
|
||||
<path style="fill:#AFB9D2;" d="M379.586,262.938c-7.836-4.404-16.975-6.938-26.483-6.938c-9.507,0-18.647,2.535-26.483,6.938
|
||||
v22.761c5.923-7.393,15.736-12.044,26.483-12.044s20.559,4.651,26.483,12.044V262.938z"/>
|
||||
</g>
|
||||
<g>
|
||||
<circle style="fill:#E4EAF8;" cx="317.793" cy="273.655" r="22.069"/>
|
||||
<circle style="fill:#E4EAF8;" cx="388.414" cy="273.655" r="22.069"/>
|
||||
</g>
|
||||
<path style="fill:#7F8499;" d="M419.954,378.345c-2.766-4.149-8.418-5.185-12.476-2.286l-54.375,38.838l-54.375-38.839
|
||||
c-4.059-2.899-9.709-1.863-12.476,2.286l-12.598,18.898l37.95,45.539c3.324,3.988,9.353,4.262,13.024,0.59l12.113-12.113
|
||||
c2.781-2.781,7.534-0.811,7.534,3.121v51.138h17.655V434.38c0-3.933,4.755-5.901,7.534-3.121l12.113,12.113
|
||||
c3.67,3.67,9.7,3.396,13.024-0.59l37.95-45.54L419.954,378.345z"/>
|
||||
<path style="fill:#C84146;" d="M271.114,163.084c-11.43,13.271-18.402,29.473-20.563,46.481
|
||||
c13.459-4.982,23.104-17.822,23.104-33.013v-16.115C272.818,161.332,271.917,162.152,271.114,163.084z"/>
|
||||
<g>
|
||||
<path style="fill:#EBC9A0;" d="M214.266,409.881c-11.789,2.947-20.06,13.54-20.06,25.692v32.289c0,9.75,7.905,17.655,17.655,17.655
|
||||
h79.448l-18.076-90.378L214.266,409.881z"/>
|
||||
<path style="fill:#EBC9A0;" d="M491.94,409.881c11.789,2.947,20.06,13.54,20.06,25.692v32.289c0,9.75-7.905,17.655-17.655,17.655
|
||||
h-79.448l18.076-90.378L491.94,409.881z"/>
|
||||
</g>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 4.8 KiB |
2
static/img/uat.svg
Normal file
@@ -0,0 +1,2 @@
|
||||
<?xml version="1.0" encoding="utf-8"?><!-- Uploaded to: SVG Repo, www.svgrepo.com, Generator: SVG Repo Mixer Tools -->
|
||||
<svg width="800px" height="800px" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><path d="M16 10H8V9h8zm-4.87 11l1.064 1H3.5C2.122 22 1 20.43 1 18.5S2.122 15 3.5 15H5V5.75C5 3.682 6.122 2 7.5 2h13c1.378 0 2.45 1.57 2.45 3.5S21.878 9 20.5 9H19v7.138l-1 .979V5.75A5.994 5.994 0 0 1 18.64 3H7.5C6.792 3 6 4.176 6 5.75V15h10.57l-.71.826A4.141 4.141 0 0 0 15 18.5a5.186 5.186 0 0 0 .047.692l-1.032-.971A5.555 5.555 0 0 1 14.557 16H3.5C2.701 16 2 17.168 2 18.5S2.701 21 3.5 21zM19 8h1.5c.799 0 1.55-1.168 1.55-2.5S21.299 3 20.5 3h-.677A4.62 4.62 0 0 0 19 5.75zM8 13h8v-1H8zm8-7H8v1h8zm6.491 8.819l-6.998 6.851-2.832-2.663-.685.728 3.53 3.321 7.685-7.522z"/><path fill="none" d="M0 0h24v24H0z"/></svg>
|
||||
|
After Width: | Height: | Size: 821 B |
BIN
static/img/uml.png
Executable file
|
After Width: | Height: | Size: 57 KiB |
BIN
static/img/user-guide/PicketLink.png
Executable file
|
After Width: | Height: | Size: 47 KiB |
BIN
static/img/user-guide/admin-console-login.png
Normal file
|
After Width: | Height: | Size: 44 KiB |
BIN
static/img/user-guide/admin-console.png
Normal file
|
After Width: | Height: | Size: 84 KiB |
BIN
static/img/user-guide/create-realm.png
Normal file
|
After Width: | Height: | Size: 80 KiB |
BIN
static/img/user-guide/email-settings.png
Normal file
|
After Width: | Height: | Size: 97 KiB |
BIN
static/img/user-guide/login.png
Normal file
|
After Width: | Height: | Size: 26 KiB |
BIN
static/img/user-guide/new-realm.png
Normal file
|
After Width: | Height: | Size: 30 KiB |
BIN
static/img/user-guide/ssl-mode.png
Normal file
|
After Width: | Height: | Size: 80 KiB |
BIN
static/img/user_acceptance_testing.png
Normal file
|
After Width: | Height: | Size: 15 KiB |
BIN
static/videos/Big_Buck_Bunny_360_10s_1MB.mp4
Normal file
BIN
static/videos/Big_Buck_Bunny_360_10s_1MB.webm
Normal file
BIN
static/videos/example_video.mp4
Normal file
BIN
static/videos/oceans.mp4
Normal file
BIN
static/videos/sample_640x360.ogv
Normal file
BIN
static/videos/user-guide/admin/admin-login.png
Normal file
|
After Width: | Height: | Size: 3.9 KiB |