1
- import { UMB_AUTH_CONTEXT } from '@umbraco-cms/backoffice/auth' ;
2
1
import type { UmbInstallerContext } from '../installer.context.js' ;
3
2
import { UMB_INSTALLER_CONTEXT } from '../installer.context.js' ;
4
3
import type { CSSResultGroup } from '@umbraco-cms/backoffice/external/lit' ;
5
4
import { css , html , customElement , state } from '@umbraco-cms/backoffice/external/lit' ;
6
5
import { UmbLitElement } from '@umbraco-cms/backoffice/lit-element' ;
7
- import type { UserSettingsPresentationModel } from "@umbraco-cms/backoffice/external/backend-api" ;
8
6
9
7
@customElement ( 'umb-installer-user' )
10
8
export class UmbInstallerUserElement extends UmbLitElement {
11
9
@state ( )
12
10
private _userFormData ?: { name : string ; password : string ; email : string ; subscribeToNewsletter : boolean } ;
11
+
13
12
@state ( )
14
- private _installerContext ?: UmbInstallerContext ;
15
- private _userSettings ?:UserSettingsPresentationModel ;
13
+ private _minimumPasswordLength = 10 ;
14
+
15
+ #installerContext?: UmbInstallerContext ;
16
16
17
17
constructor ( ) {
18
18
super ( ) ;
19
19
20
20
this . consumeContext ( UMB_INSTALLER_CONTEXT , ( installerContext ) => {
21
- this . _installerContext = installerContext ;
21
+ this . #installerContext = installerContext ;
22
22
this . _observeInstallerData ( ) ;
23
23
} ) ;
24
24
}
25
25
26
26
private _observeInstallerData ( ) {
27
- if ( ! this . _installerContext ) return ;
27
+ if ( ! this . #installerContext ) return ;
28
28
29
- this . observe ( this . _installerContext . data , ( { user } ) => {
29
+ this . observe ( this . #installerContext . data , ( { user } ) => {
30
30
this . _userFormData = {
31
31
name : user . name ,
32
32
password : user . password ,
@@ -35,9 +35,9 @@ export class UmbInstallerUserElement extends UmbLitElement {
35
35
} ;
36
36
} ) ;
37
37
38
- this . observe ( this . _installerContext . settings , ( settings ) => {
39
- this . _userSettings = settings ?. user ;
40
- } )
38
+ this . observe ( this . #installerContext . settings , ( settings ) => {
39
+ this . _minimumPasswordLength = settings ?. user . minCharLength ?? this . _minimumPasswordLength ;
40
+ } ) ;
41
41
}
42
42
43
43
private _handleSubmit = ( e : SubmitEvent ) => {
@@ -55,8 +55,8 @@ export class UmbInstallerUserElement extends UmbLitElement {
55
55
const email = formData . get ( 'email' ) as string ;
56
56
const subscribeToNewsletter = formData . has ( 'subscribeToNewsletter' ) ;
57
57
58
- this . _installerContext ?. appendData ( { user : { name, password, email, subscribeToNewsletter } } ) ;
59
- this . _installerContext ?. nextStep ( ) ;
58
+ this . #installerContext ?. appendData ( { user : { name, password, email, subscribeToNewsletter } } ) ;
59
+ this . #installerContext ?. nextStep ( ) ;
60
60
} ;
61
61
62
62
render ( ) {
@@ -94,7 +94,7 @@ export class UmbInstallerUserElement extends UmbLitElement {
94
94
id= "password"
95
95
name = "password"
96
96
label = "password"
97
- minlength = ${ this . _userSettings ?. minCharLength ?? 10 }
97
+ minlength = ${ this . _minimumPasswordLength }
98
98
.value = ${ this . _userFormData ?. password }
99
99
required
100
100
required- message= "Password is required" > </ uui- input- passwor d>
0 commit comments