@design.estate/dees-catalog 1.0.174 → 1.0.175
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/package.json
CHANGED
|
@@ -45,6 +45,7 @@ export class DeesForm extends DeesElement {
|
|
|
45
45
|
|
|
46
46
|
public name: string = 'myform';
|
|
47
47
|
public changeSubject = new domtools.rxjs.Subject();
|
|
48
|
+
public readyDeferred = domtools.plugins.smartpromise.defer();
|
|
48
49
|
|
|
49
50
|
public render(): TemplateResult {
|
|
50
51
|
return html`
|
|
@@ -70,6 +71,7 @@ export class DeesForm extends DeesElement {
|
|
|
70
71
|
});
|
|
71
72
|
}
|
|
72
73
|
await this.addBehaviours();
|
|
74
|
+
this.readyDeferred.resolve();
|
|
73
75
|
}
|
|
74
76
|
|
|
75
77
|
public getFormElements(): Array<TFormInputElement> {
|
|
@@ -11,8 +11,6 @@ import {
|
|
|
11
11
|
state,
|
|
12
12
|
} from '@design.estate/dees-element';
|
|
13
13
|
|
|
14
|
-
import * as domtools from '@design.estate/dees-domtools';
|
|
15
|
-
|
|
16
14
|
declare global {
|
|
17
15
|
interface HTMLElementTagNameMap {
|
|
18
16
|
'dees-simple-login': DeesSimpleLogin;
|
|
@@ -34,6 +32,7 @@ export class DeesSimpleLogin extends DeesElement {
|
|
|
34
32
|
css`
|
|
35
33
|
:host {
|
|
36
34
|
color: ${cssManager.bdTheme('#333', '#fff')};
|
|
35
|
+
user-select: none;
|
|
37
36
|
}
|
|
38
37
|
.loginContainer {
|
|
39
38
|
display: flex;
|
|
@@ -62,13 +61,26 @@ export class DeesSimpleLogin extends DeesElement {
|
|
|
62
61
|
<div class="login">
|
|
63
62
|
<dees-form>
|
|
64
63
|
<div class="header">Login to ${this.title}</div>
|
|
65
|
-
<dees-input-text label="username"></dees-input-text>
|
|
66
|
-
<dees-input-text label="password" isPasswordBool></dees-input-text>
|
|
67
|
-
<dees-form-submit>login</dees-form-submit>
|
|
64
|
+
<dees-input-text label="username" required></dees-input-text>
|
|
65
|
+
<dees-input-text label="password" isPasswordBool required></dees-input-text>
|
|
66
|
+
<dees-form-submit disabled>login</dees-form-submit>
|
|
68
67
|
</dees-form>
|
|
69
68
|
</div>
|
|
70
69
|
</div>
|
|
71
70
|
<slot></slot>
|
|
72
71
|
`;
|
|
73
72
|
}
|
|
73
|
+
|
|
74
|
+
public async firstUpdated(_changedProperties): Promise<void> {
|
|
75
|
+
const domtools = await this.domtoolsPromise;
|
|
76
|
+
super.firstUpdated(_changedProperties);
|
|
77
|
+
const form = this.shadowRoot.querySelector('dees-form');
|
|
78
|
+
await form.readyDeferred.promise;
|
|
79
|
+
const username = this.shadowRoot.querySelector('dees-input-text[label="username"]');
|
|
80
|
+
const password = this.shadowRoot.querySelector('dees-input-text[label="password"]');
|
|
81
|
+
const submit = this.shadowRoot.querySelector('dees-form-submit');
|
|
82
|
+
form.addEventListener('formData', (event: CustomEvent) => {
|
|
83
|
+
this.dispatchEvent(new CustomEvent('login', { detail: event.detail }));
|
|
84
|
+
});
|
|
85
|
+
}
|
|
74
86
|
}
|