@genesislcap/foundation-login 14.61.2 → 14.62.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/docs/.gitattributes +2 -0
- package/docs/api/foundation-login.configure.md +63 -0
- package/docs/api/foundation-login.defaultapihost.md +12 -0
- package/docs/api/foundation-login.defaultloginconfig.md +13 -0
- package/docs/api/foundation-login.defaultorganisation.md +12 -0
- package/docs/api/foundation-login.defaultpassword.md +12 -0
- package/docs/api/foundation-login.defaultsocketext.md +12 -0
- package/docs/api/foundation-login.defaulttemplateoptions.md +16 -0
- package/docs/api/foundation-login.defaultuser.md +12 -0
- package/docs/api/foundation-login.define.md +38 -0
- package/docs/api/foundation-login.definition.md +19 -0
- package/docs/api/foundation-login.fieldconfig.md +19 -0
- package/docs/api/foundation-login.fieldconfigmap.md +19 -0
- package/docs/api/foundation-login.hostenv.md +12 -0
- package/docs/api/foundation-login.hosturl.md +12 -0
- package/docs/api/foundation-login.idp.id.md +11 -0
- package/docs/api/foundation-login.idp.md +20 -0
- package/docs/api/foundation-login.idp.type.md +11 -0
- package/docs/api/foundation-login.idpresponse.id.md +11 -0
- package/docs/api/foundation-login.idpresponse.md +20 -0
- package/docs/api/foundation-login.idpresponse.type.md +11 -0
- package/docs/api/foundation-login.ismfroute.md +24 -0
- package/docs/api/foundation-login.login.md +108 -0
- package/docs/api/foundation-login.loginconfig.autoauth.md +18 -0
- package/docs/api/foundation-login.loginconfig.autoconnect.md +13 -0
- package/docs/api/foundation-login.loginconfig.background.md +30 -0
- package/docs/api/foundation-login.loginconfig.defaultredirecturl.md +18 -0
- package/docs/api/foundation-login.loginconfig.fields.md +18 -0
- package/docs/api/foundation-login.loginconfig.hostpath.md +18 -0
- package/docs/api/foundation-login.loginconfig.logo.md +28 -0
- package/docs/api/foundation-login.loginconfig.md +31 -0
- package/docs/api/foundation-login.loginconfig.omitredirecturls.md +21 -0
- package/docs/api/foundation-login.loginconfig.omitroutes.md +25 -0
- package/docs/api/foundation-login.loginconfig.showconnectionindicator.md +13 -0
- package/docs/api/foundation-login.loginconfig.sso.md +18 -0
- package/docs/api/foundation-login.loginconfig.versioninformation.md +25 -0
- package/docs/api/foundation-login.loginhosted.md +23 -0
- package/docs/api/foundation-login.loginhosted.registercommoncomponents.md +18 -0
- package/docs/api/foundation-login.md +59 -0
- package/docs/api/foundation-login.routes.md +20 -0
- package/docs/api/foundation-login.settings.md +20 -0
- package/docs/api/foundation-login.ssoconfig.md +15 -0
- package/docs/api/foundation-login.styles.md +24 -0
- package/docs/api/foundation-login.template.md +12 -0
- package/docs/api/foundation-login.templatecomponents.md +25 -0
- package/docs/api/foundation-login.templateoptions.md +19 -0
- package/docs/api/index.md +12 -0
- package/docs/api-report.md +386 -0
- package/docs/img/foundation-login_change-password.png +0 -0
- package/docs/img/foundation-login_forgotten-password.png +0 -0
- package/docs/img/foundation-login_login-sso.png +0 -0
- package/docs/img/foundation-login_login-standard.png +0 -0
- package/docs/img/foundation-login_request-account.png +0 -0
- package/package.json +8 -8
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
|
|
2
|
+
|
|
3
|
+
[Home](./index.md) > [@genesislcap/foundation-login](./foundation-login.md) > [configure](./foundation-login.configure.md)
|
|
4
|
+
|
|
5
|
+
## configure() function
|
|
6
|
+
|
|
7
|
+
Configure the login micro frontend settings.
|
|
8
|
+
|
|
9
|
+
**Signature:**
|
|
10
|
+
|
|
11
|
+
```typescript
|
|
12
|
+
export declare function configure(container: Container, config: Partial<LoginConfig>): void;
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
## Parameters
|
|
16
|
+
|
|
17
|
+
| Parameter | Type | Description |
|
|
18
|
+
| --- | --- | --- |
|
|
19
|
+
| container | Container | DI container. |
|
|
20
|
+
| config | Partial<[LoginConfig](./foundation-login.loginconfig.md)<!-- -->> | A partial LoginConfig. |
|
|
21
|
+
|
|
22
|
+
**Returns:**
|
|
23
|
+
|
|
24
|
+
void
|
|
25
|
+
|
|
26
|
+
## Remarks
|
|
27
|
+
|
|
28
|
+
This is primarily for general settings, rather than re-defining the element, static templating / style changes.
|
|
29
|
+
|
|
30
|
+
## Example
|
|
31
|
+
|
|
32
|
+
Configuring login on lazy load
|
|
33
|
+
|
|
34
|
+
```ts
|
|
35
|
+
name: 'login',
|
|
36
|
+
path: 'login',
|
|
37
|
+
title: 'Login',
|
|
38
|
+
element: async () => {
|
|
39
|
+
const { configure, define, defaultLoginConfig } = await import('@genesislcap/foundation-login');
|
|
40
|
+
configure(this.container, {
|
|
41
|
+
autoConnect: true,
|
|
42
|
+
omitRoutes: ['request-account'],
|
|
43
|
+
fields: {
|
|
44
|
+
...defaultLoginConfig.fields,
|
|
45
|
+
organisation: {
|
|
46
|
+
label: 'CompID',
|
|
47
|
+
},
|
|
48
|
+
},
|
|
49
|
+
hostPath: 'login',
|
|
50
|
+
defaultRedirectUrl: 'dashboard',
|
|
51
|
+
logo: loginLogo,
|
|
52
|
+
background: loginBG,
|
|
53
|
+
});
|
|
54
|
+
// You can import and return `Login` directly here or re-define it completely via `define`.
|
|
55
|
+
return define({
|
|
56
|
+
name: `nexus-login`,
|
|
57
|
+
});
|
|
58
|
+
},
|
|
59
|
+
layout: loginLayout,
|
|
60
|
+
settings: { public: true },
|
|
61
|
+
childRouters: true,
|
|
62
|
+
```
|
|
63
|
+
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
|
|
2
|
+
|
|
3
|
+
[Home](./index.md) > [@genesislcap/foundation-login](./foundation-login.md) > [defaultApiHost](./foundation-login.defaultapihost.md)
|
|
4
|
+
|
|
5
|
+
## defaultApiHost variable
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
**Signature:**
|
|
9
|
+
|
|
10
|
+
```typescript
|
|
11
|
+
defaultApiHost: string
|
|
12
|
+
```
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
|
|
2
|
+
|
|
3
|
+
[Home](./index.md) > [@genesislcap/foundation-login](./foundation-login.md) > [defaultLoginConfig](./foundation-login.defaultloginconfig.md)
|
|
4
|
+
|
|
5
|
+
## defaultLoginConfig variable
|
|
6
|
+
|
|
7
|
+
Default LoginConfig DI implementation.
|
|
8
|
+
|
|
9
|
+
**Signature:**
|
|
10
|
+
|
|
11
|
+
```typescript
|
|
12
|
+
defaultLoginConfig: LoginConfig
|
|
13
|
+
```
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
|
|
2
|
+
|
|
3
|
+
[Home](./index.md) > [@genesislcap/foundation-login](./foundation-login.md) > [defaultOrganisation](./foundation-login.defaultorganisation.md)
|
|
4
|
+
|
|
5
|
+
## defaultOrganisation variable
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
**Signature:**
|
|
9
|
+
|
|
10
|
+
```typescript
|
|
11
|
+
defaultOrganisation: string
|
|
12
|
+
```
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
|
|
2
|
+
|
|
3
|
+
[Home](./index.md) > [@genesislcap/foundation-login](./foundation-login.md) > [defaultPassword](./foundation-login.defaultpassword.md)
|
|
4
|
+
|
|
5
|
+
## defaultPassword variable
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
**Signature:**
|
|
9
|
+
|
|
10
|
+
```typescript
|
|
11
|
+
defaultPassword: string
|
|
12
|
+
```
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
|
|
2
|
+
|
|
3
|
+
[Home](./index.md) > [@genesislcap/foundation-login](./foundation-login.md) > [defaultSocketExt](./foundation-login.defaultsocketext.md)
|
|
4
|
+
|
|
5
|
+
## defaultSocketExt variable
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
**Signature:**
|
|
9
|
+
|
|
10
|
+
```typescript
|
|
11
|
+
defaultSocketExt: string
|
|
12
|
+
```
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
|
|
2
|
+
|
|
3
|
+
[Home](./index.md) > [@genesislcap/foundation-login](./foundation-login.md) > [defaultTemplateOptions](./foundation-login.defaulttemplateoptions.md)
|
|
4
|
+
|
|
5
|
+
## defaultTemplateOptions variable
|
|
6
|
+
|
|
7
|
+
> This API is provided as a preview for developers and may change based on feedback that we receive. Do not use this API in a production environment.
|
|
8
|
+
>
|
|
9
|
+
|
|
10
|
+
The default template options this MF has been created with.
|
|
11
|
+
|
|
12
|
+
**Signature:**
|
|
13
|
+
|
|
14
|
+
```typescript
|
|
15
|
+
defaultTemplateOptions: TemplateOptions
|
|
16
|
+
```
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
|
|
2
|
+
|
|
3
|
+
[Home](./index.md) > [@genesislcap/foundation-login](./foundation-login.md) > [defaultUser](./foundation-login.defaultuser.md)
|
|
4
|
+
|
|
5
|
+
## defaultUser variable
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
**Signature:**
|
|
9
|
+
|
|
10
|
+
```typescript
|
|
11
|
+
defaultUser: string
|
|
12
|
+
```
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
|
|
2
|
+
|
|
3
|
+
[Home](./index.md) > [@genesislcap/foundation-login](./foundation-login.md) > [define](./foundation-login.define.md)
|
|
4
|
+
|
|
5
|
+
## define variable
|
|
6
|
+
|
|
7
|
+
> This API is provided as a preview for developers and may change based on feedback that we receive. Do not use this API in a production environment.
|
|
8
|
+
>
|
|
9
|
+
|
|
10
|
+
Re-define the login micro frontend.
|
|
11
|
+
|
|
12
|
+
**Signature:**
|
|
13
|
+
|
|
14
|
+
```typescript
|
|
15
|
+
define: import("@genesislcap/foundation-ui").DefineFunction<typeof Login>
|
|
16
|
+
```
|
|
17
|
+
|
|
18
|
+
## Example
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
```ts
|
|
22
|
+
import { define, styles, template, defaultTemplateOptions } from '@genesislcap/foundation-login';
|
|
23
|
+
const customTemplateOptions = {
|
|
24
|
+
...defaultTemplateOptions,
|
|
25
|
+
...customOptions,
|
|
26
|
+
}
|
|
27
|
+
export const AppLogin = define({
|
|
28
|
+
name: `nexus-login`,
|
|
29
|
+
template: template(customTemplateOptions),
|
|
30
|
+
styles: css`
|
|
31
|
+
${styles(customTemplateOptions)}
|
|
32
|
+
some-element {
|
|
33
|
+
background-color: #ff00b4;
|
|
34
|
+
}
|
|
35
|
+
`,
|
|
36
|
+
});
|
|
37
|
+
```
|
|
38
|
+
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
|
|
2
|
+
|
|
3
|
+
[Home](./index.md) > [@genesislcap/foundation-login](./foundation-login.md) > [definition](./foundation-login.definition.md)
|
|
4
|
+
|
|
5
|
+
## definition variable
|
|
6
|
+
|
|
7
|
+
> This API is provided as a preview for developers and may change based on feedback that we receive. Do not use this API in a production environment.
|
|
8
|
+
>
|
|
9
|
+
|
|
10
|
+
**Signature:**
|
|
11
|
+
|
|
12
|
+
```typescript
|
|
13
|
+
definition: PartialFASTElementDefinition
|
|
14
|
+
```
|
|
15
|
+
|
|
16
|
+
## Remarks
|
|
17
|
+
|
|
18
|
+
This is the main definition of this micro frontend which is exposed for user reconfiguration.
|
|
19
|
+
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
|
|
2
|
+
|
|
3
|
+
[Home](./index.md) > [@genesislcap/foundation-login](./foundation-login.md) > [FieldConfig](./foundation-login.fieldconfig.md)
|
|
4
|
+
|
|
5
|
+
## FieldConfig type
|
|
6
|
+
|
|
7
|
+
Could be expanded to allow field ViewTemplates.
|
|
8
|
+
|
|
9
|
+
**Signature:**
|
|
10
|
+
|
|
11
|
+
```typescript
|
|
12
|
+
export type FieldConfig = {
|
|
13
|
+
label: string;
|
|
14
|
+
value?: any;
|
|
15
|
+
required?: boolean;
|
|
16
|
+
pattern?: string;
|
|
17
|
+
title?: string;
|
|
18
|
+
};
|
|
19
|
+
```
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
|
|
2
|
+
|
|
3
|
+
[Home](./index.md) > [@genesislcap/foundation-login](./foundation-login.md) > [FieldConfigMap](./foundation-login.fieldconfigmap.md)
|
|
4
|
+
|
|
5
|
+
## FieldConfigMap type
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
**Signature:**
|
|
9
|
+
|
|
10
|
+
```typescript
|
|
11
|
+
export type FieldConfigMap = {
|
|
12
|
+
organisation: FieldConfig | null;
|
|
13
|
+
username: FieldConfig;
|
|
14
|
+
email: FieldConfig;
|
|
15
|
+
password: FieldConfig;
|
|
16
|
+
};
|
|
17
|
+
```
|
|
18
|
+
**References:** [FieldConfig](./foundation-login.fieldconfig.md)
|
|
19
|
+
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
|
|
2
|
+
|
|
3
|
+
[Home](./index.md) > [@genesislcap/foundation-login](./foundation-login.md) > [hostEnv](./foundation-login.hostenv.md)
|
|
4
|
+
|
|
5
|
+
## hostEnv variable
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
**Signature:**
|
|
9
|
+
|
|
10
|
+
```typescript
|
|
11
|
+
hostEnv: string
|
|
12
|
+
```
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
|
|
2
|
+
|
|
3
|
+
[Home](./index.md) > [@genesislcap/foundation-login](./foundation-login.md) > [hostUrl](./foundation-login.hosturl.md)
|
|
4
|
+
|
|
5
|
+
## hostUrl variable
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
**Signature:**
|
|
9
|
+
|
|
10
|
+
```typescript
|
|
11
|
+
hostUrl: string
|
|
12
|
+
```
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
|
|
2
|
+
|
|
3
|
+
[Home](./index.md) > [@genesislcap/foundation-login](./foundation-login.md) > [IDP](./foundation-login.idp.md) > [id](./foundation-login.idp.id.md)
|
|
4
|
+
|
|
5
|
+
## IDP.id property
|
|
6
|
+
|
|
7
|
+
**Signature:**
|
|
8
|
+
|
|
9
|
+
```typescript
|
|
10
|
+
id: string;
|
|
11
|
+
```
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
|
|
2
|
+
|
|
3
|
+
[Home](./index.md) > [@genesislcap/foundation-login](./foundation-login.md) > [IDP](./foundation-login.idp.md)
|
|
4
|
+
|
|
5
|
+
## IDP interface
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
**Signature:**
|
|
9
|
+
|
|
10
|
+
```typescript
|
|
11
|
+
export interface IDP
|
|
12
|
+
```
|
|
13
|
+
|
|
14
|
+
## Properties
|
|
15
|
+
|
|
16
|
+
| Property | Modifiers | Type | Description |
|
|
17
|
+
| --- | --- | --- | --- |
|
|
18
|
+
| [id](./foundation-login.idp.id.md) | | string | |
|
|
19
|
+
| [type](./foundation-login.idp.type.md) | | string | |
|
|
20
|
+
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
|
|
2
|
+
|
|
3
|
+
[Home](./index.md) > [@genesislcap/foundation-login](./foundation-login.md) > [IDP](./foundation-login.idp.md) > [type](./foundation-login.idp.type.md)
|
|
4
|
+
|
|
5
|
+
## IDP.type property
|
|
6
|
+
|
|
7
|
+
**Signature:**
|
|
8
|
+
|
|
9
|
+
```typescript
|
|
10
|
+
type: string;
|
|
11
|
+
```
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
|
|
2
|
+
|
|
3
|
+
[Home](./index.md) > [@genesislcap/foundation-login](./foundation-login.md) > [IDPResponse](./foundation-login.idpresponse.md) > [ID](./foundation-login.idpresponse.id.md)
|
|
4
|
+
|
|
5
|
+
## IDPResponse.ID property
|
|
6
|
+
|
|
7
|
+
**Signature:**
|
|
8
|
+
|
|
9
|
+
```typescript
|
|
10
|
+
ID: string;
|
|
11
|
+
```
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
|
|
2
|
+
|
|
3
|
+
[Home](./index.md) > [@genesislcap/foundation-login](./foundation-login.md) > [IDPResponse](./foundation-login.idpresponse.md)
|
|
4
|
+
|
|
5
|
+
## IDPResponse interface
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
**Signature:**
|
|
9
|
+
|
|
10
|
+
```typescript
|
|
11
|
+
export interface IDPResponse
|
|
12
|
+
```
|
|
13
|
+
|
|
14
|
+
## Properties
|
|
15
|
+
|
|
16
|
+
| Property | Modifiers | Type | Description |
|
|
17
|
+
| --- | --- | --- | --- |
|
|
18
|
+
| [ID](./foundation-login.idpresponse.id.md) | | string | |
|
|
19
|
+
| [TYPE](./foundation-login.idpresponse.type.md) | | string | |
|
|
20
|
+
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
|
|
2
|
+
|
|
3
|
+
[Home](./index.md) > [@genesislcap/foundation-login](./foundation-login.md) > [IDPResponse](./foundation-login.idpresponse.md) > [TYPE](./foundation-login.idpresponse.type.md)
|
|
4
|
+
|
|
5
|
+
## IDPResponse.TYPE property
|
|
6
|
+
|
|
7
|
+
**Signature:**
|
|
8
|
+
|
|
9
|
+
```typescript
|
|
10
|
+
TYPE: string;
|
|
11
|
+
```
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
|
|
2
|
+
|
|
3
|
+
[Home](./index.md) > [@genesislcap/foundation-login](./foundation-login.md) > [isMFRoute](./foundation-login.ismfroute.md)
|
|
4
|
+
|
|
5
|
+
## isMFRoute() function
|
|
6
|
+
|
|
7
|
+
A utility to check if a pathname is a route of this micro frontend.
|
|
8
|
+
|
|
9
|
+
**Signature:**
|
|
10
|
+
|
|
11
|
+
```typescript
|
|
12
|
+
export declare function isMFRoute(pathname?: string): boolean;
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
## Parameters
|
|
16
|
+
|
|
17
|
+
| Parameter | Type | Description |
|
|
18
|
+
| --- | --- | --- |
|
|
19
|
+
| pathname | string | _(Optional)_ A pathname string to check, typically location.pathname, which is used when a value is omitted. |
|
|
20
|
+
|
|
21
|
+
**Returns:**
|
|
22
|
+
|
|
23
|
+
boolean
|
|
24
|
+
|
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
|
|
2
|
+
|
|
3
|
+
[Home](./index.md) > [@genesislcap/foundation-login](./foundation-login.md) > [Login](./foundation-login.login.md)
|
|
4
|
+
|
|
5
|
+
## Login class
|
|
6
|
+
|
|
7
|
+
Defines the login class which handles account authentication from the front-end
|
|
8
|
+
|
|
9
|
+
**Signature:**
|
|
10
|
+
|
|
11
|
+
```typescript
|
|
12
|
+
export declare class Login extends FASTElement
|
|
13
|
+
```
|
|
14
|
+
**Extends:** FASTElement
|
|
15
|
+
|
|
16
|
+
## Remarks
|
|
17
|
+
|
|
18
|
+
Add the Login class as a router element, and it will handle the account authentication for you. Requires use of `@genesislcap/foundation-comms` for the and classes.
|
|
19
|
+
|
|
20
|
+
There are a lot of configuration options available, and different authentication types (such as login via SSO). Use the modules exported `configure` and `define` functions for more power.
|
|
21
|
+
|
|
22
|
+
## Example
|
|
23
|
+
|
|
24
|
+
The following is an example of using it in your app, setting it up in the router configuration. This isn't a complete routes confutation, but it contains all required configuration in regard to adding Login functionality.
|
|
25
|
+
|
|
26
|
+
```ts
|
|
27
|
+
// Import required dependencies from the foundation-login package
|
|
28
|
+
import { Login } from '@genesislcap/foundation-login';
|
|
29
|
+
// Import required dependencies from the foundation-comms package
|
|
30
|
+
// You could also import analytics events and set them up in the NavigationContributor
|
|
31
|
+
import { Auth, Session } from '@genesislcap/foundation-comms';
|
|
32
|
+
|
|
33
|
+
type RouterSettings = {
|
|
34
|
+
public?: boolean;
|
|
35
|
+
autoAuth?: boolean;
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
// Define your router config
|
|
39
|
+
export class MainRouterConfig extends RouterConfiguration<RouterSettings> {
|
|
40
|
+
// Ensure you inject in required dependencies
|
|
41
|
+
constructor(
|
|
42
|
+
@Auth private auth: Auth,
|
|
43
|
+
@Session private session: Session
|
|
44
|
+
) {
|
|
45
|
+
super();
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
// Add Login as a route
|
|
49
|
+
public configure() {
|
|
50
|
+
...
|
|
51
|
+
this.routes.map(
|
|
52
|
+
{ path: '', redirect: 'login' },
|
|
53
|
+
{
|
|
54
|
+
path: 'login',
|
|
55
|
+
element: Login,
|
|
56
|
+
title: 'Login',
|
|
57
|
+
name: 'login',
|
|
58
|
+
layout: loginLayout,
|
|
59
|
+
settings: { public: true },
|
|
60
|
+
childRouters: true,
|
|
61
|
+
},
|
|
62
|
+
... // Other routes config here
|
|
63
|
+
);
|
|
64
|
+
|
|
65
|
+
const session = this.session;
|
|
66
|
+
const auth = this.auth;
|
|
67
|
+
|
|
68
|
+
// Example of a FallbackRouteDefinition
|
|
69
|
+
this.routes.fallback(() =>
|
|
70
|
+
auth.isLoggedIn ? { redirect: 'not-found' } : { redirect: 'login' }
|
|
71
|
+
);
|
|
72
|
+
|
|
73
|
+
// Example of a NavigationContributor
|
|
74
|
+
this.contributors.push({
|
|
75
|
+
navigate: async (phase) => {
|
|
76
|
+
const settings = phase.route.settings;
|
|
77
|
+
|
|
78
|
+
// Could add in processes such as analytics here
|
|
79
|
+
|
|
80
|
+
// If public route don't block
|
|
81
|
+
if (settings && settings.public) {
|
|
82
|
+
return;
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
// If logged in don't block
|
|
86
|
+
if (auth.isLoggedIn) {
|
|
87
|
+
return;
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
// If autoAuth and session is valid try to connect+auto-login
|
|
91
|
+
if (settings && settings.autoAuth && (await auth.reAuthFromSession())) {
|
|
92
|
+
return;
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
// Otherwise route them to login
|
|
96
|
+
phase.cancel(() => {
|
|
97
|
+
session.captureReturnUrl();
|
|
98
|
+
Route.name.replace(phase.router, 'login');
|
|
99
|
+
});
|
|
100
|
+
},
|
|
101
|
+
});
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
... // Other configuration/methods
|
|
105
|
+
|
|
106
|
+
}
|
|
107
|
+
```
|
|
108
|
+
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
|
|
2
|
+
|
|
3
|
+
[Home](./index.md) > [@genesislcap/foundation-login](./foundation-login.md) > [LoginConfig](./foundation-login.loginconfig.md) > [autoAuth](./foundation-login.loginconfig.autoauth.md)
|
|
4
|
+
|
|
5
|
+
## LoginConfig.autoAuth property
|
|
6
|
+
|
|
7
|
+
Login automatically or require user to click a login button after a connection is established.
|
|
8
|
+
|
|
9
|
+
**Signature:**
|
|
10
|
+
|
|
11
|
+
```typescript
|
|
12
|
+
autoAuth: boolean;
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
## Remarks
|
|
16
|
+
|
|
17
|
+
Needs to manually be enabled in the NavigationContributor (see \[2\] in the example in the [Login](./foundation-login.login.md) class).
|
|
18
|
+
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
|
|
2
|
+
|
|
3
|
+
[Home](./index.md) > [@genesislcap/foundation-login](./foundation-login.md) > [LoginConfig](./foundation-login.loginconfig.md) > [autoConnect](./foundation-login.loginconfig.autoconnect.md)
|
|
4
|
+
|
|
5
|
+
## LoginConfig.autoConnect property
|
|
6
|
+
|
|
7
|
+
Connect automatically or require user to click a connect button.
|
|
8
|
+
|
|
9
|
+
**Signature:**
|
|
10
|
+
|
|
11
|
+
```typescript
|
|
12
|
+
autoConnect: boolean;
|
|
13
|
+
```
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
|
|
2
|
+
|
|
3
|
+
[Home](./index.md) > [@genesislcap/foundation-login](./foundation-login.md) > [LoginConfig](./foundation-login.loginconfig.md) > [background](./foundation-login.loginconfig.background.md)
|
|
4
|
+
|
|
5
|
+
## LoginConfig.background property
|
|
6
|
+
|
|
7
|
+
Background styles.
|
|
8
|
+
|
|
9
|
+
**Signature:**
|
|
10
|
+
|
|
11
|
+
```typescript
|
|
12
|
+
background: ElementStyles;
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
## Remarks
|
|
16
|
+
|
|
17
|
+
See [https://developer.mozilla.org/en-US/docs/Web/CSS/background](https://developer.mozilla.org/en-US/docs/Web/CSS/background) for more information.
|
|
18
|
+
|
|
19
|
+
## Example
|
|
20
|
+
|
|
21
|
+
Setting a custom background image
|
|
22
|
+
|
|
23
|
+
```ts
|
|
24
|
+
background: css`
|
|
25
|
+
:host {
|
|
26
|
+
background-image: url(${customBGImport});
|
|
27
|
+
}
|
|
28
|
+
`,
|
|
29
|
+
```
|
|
30
|
+
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
|
|
2
|
+
|
|
3
|
+
[Home](./index.md) > [@genesislcap/foundation-login](./foundation-login.md) > [LoginConfig](./foundation-login.loginconfig.md) > [defaultRedirectUrl](./foundation-login.loginconfig.defaultredirecturl.md)
|
|
4
|
+
|
|
5
|
+
## LoginConfig.defaultRedirectUrl property
|
|
6
|
+
|
|
7
|
+
The default URL to route the user to after a successful login.
|
|
8
|
+
|
|
9
|
+
**Signature:**
|
|
10
|
+
|
|
11
|
+
```typescript
|
|
12
|
+
defaultRedirectUrl: string;
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
## Remarks
|
|
16
|
+
|
|
17
|
+
Session.returnUrl set via Session.captureReturnUrl() trumps this value.
|
|
18
|
+
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
|
|
2
|
+
|
|
3
|
+
[Home](./index.md) > [@genesislcap/foundation-login](./foundation-login.md) > [LoginConfig](./foundation-login.loginconfig.md) > [fields](./foundation-login.loginconfig.fields.md)
|
|
4
|
+
|
|
5
|
+
## LoginConfig.fields property
|
|
6
|
+
|
|
7
|
+
Map of configuration for each of the primary form fields.
|
|
8
|
+
|
|
9
|
+
**Signature:**
|
|
10
|
+
|
|
11
|
+
```typescript
|
|
12
|
+
fields: FieldConfigMap;
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
## Remarks
|
|
16
|
+
|
|
17
|
+
Use to drive inclusion / exclusion, tailor labels etc.
|
|
18
|
+
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
|
|
2
|
+
|
|
3
|
+
[Home](./index.md) > [@genesislcap/foundation-login](./foundation-login.md) > [LoginConfig](./foundation-login.loginconfig.md) > [hostPath](./foundation-login.loginconfig.hostpath.md)
|
|
4
|
+
|
|
5
|
+
## LoginConfig.hostPath property
|
|
6
|
+
|
|
7
|
+
The `path` of the micro frontend as defined in the parent / host route.
|
|
8
|
+
|
|
9
|
+
**Signature:**
|
|
10
|
+
|
|
11
|
+
```typescript
|
|
12
|
+
hostPath: string;
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
## Remarks
|
|
16
|
+
|
|
17
|
+
Used to help resolve internal route links. Defaults to an empty string.
|
|
18
|
+
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
|
|
2
|
+
|
|
3
|
+
[Home](./index.md) > [@genesislcap/foundation-login](./foundation-login.md) > [LoginConfig](./foundation-login.loginconfig.md) > [logo](./foundation-login.loginconfig.logo.md)
|
|
4
|
+
|
|
5
|
+
## LoginConfig.logo property
|
|
6
|
+
|
|
7
|
+
Logo styles.
|
|
8
|
+
|
|
9
|
+
**Signature:**
|
|
10
|
+
|
|
11
|
+
```typescript
|
|
12
|
+
logo: ElementStyles | null;
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
## Remarks
|
|
16
|
+
|
|
17
|
+
Providing `null` will hide the logo. Use content: url(...); to set source.
|
|
18
|
+
|
|
19
|
+
## Example
|
|
20
|
+
|
|
21
|
+
Setting a custom logo
|
|
22
|
+
|
|
23
|
+
```ts
|
|
24
|
+
logo: css`
|
|
25
|
+
content: url(${customLogoImport});
|
|
26
|
+
`,
|
|
27
|
+
```
|
|
28
|
+
|