refactor: Remove unnecessary imports in dees-form-submit and dees-simple-login
This commit is contained in:
@ -8,7 +8,6 @@ import {
|
|||||||
type CSSResult,
|
type CSSResult,
|
||||||
} from '@design.estate/dees-element';
|
} from '@design.estate/dees-element';
|
||||||
import { DeesForm } from './dees-form.js';
|
import { DeesForm } from './dees-form.js';
|
||||||
import './dees-button.js'; // Import to ensure dees-button is registered
|
|
||||||
|
|
||||||
declare global {
|
declare global {
|
||||||
interface HTMLElementTagNameMap {
|
interface HTMLElementTagNameMap {
|
||||||
|
@ -8,16 +8,8 @@ import {
|
|||||||
type TemplateResult,
|
type TemplateResult,
|
||||||
cssManager,
|
cssManager,
|
||||||
css,
|
css,
|
||||||
unsafeCSS,
|
|
||||||
type CSSResult,
|
|
||||||
state,
|
|
||||||
} from '@design.estate/dees-element';
|
} from '@design.estate/dees-element';
|
||||||
|
|
||||||
// Import components used in template
|
|
||||||
import './dees-form.js';
|
|
||||||
import './dees-input-text.js';
|
|
||||||
import './dees-form-submit.js';
|
|
||||||
|
|
||||||
declare global {
|
declare global {
|
||||||
interface HTMLElementTagNameMap {
|
interface HTMLElementTagNameMap {
|
||||||
'dees-simple-login': DeesSimpleLogin;
|
'dees-simple-login': DeesSimpleLogin;
|
||||||
@ -126,46 +118,19 @@ export class DeesSimpleLogin extends DeesElement {
|
|||||||
|
|
||||||
public async firstUpdated(_changedProperties: Map<string | number | symbol, unknown>): Promise<void> {
|
public async firstUpdated(_changedProperties: Map<string | number | symbol, unknown>): Promise<void> {
|
||||||
super.firstUpdated(_changedProperties);
|
super.firstUpdated(_changedProperties);
|
||||||
const domtools = await this.domtoolsPromise;
|
|
||||||
|
|
||||||
// Wait a tick to ensure child elements are rendered
|
|
||||||
await this.updateComplete;
|
|
||||||
|
|
||||||
const form = this.shadowRoot.querySelector('dees-form') as any;
|
const form = this.shadowRoot.querySelector('dees-form') as any;
|
||||||
|
if (form) {
|
||||||
if (!form) {
|
form.addEventListener('formData', (event: CustomEvent) => {
|
||||||
console.error('dees-form element not found in dees-simple-login');
|
this.dispatchEvent(new CustomEvent('login', {
|
||||||
return;
|
detail: event.detail,
|
||||||
|
bubbles: true,
|
||||||
|
composed: true
|
||||||
|
}));
|
||||||
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
// Check if the form has the readyDeferred property and wait for it
|
|
||||||
if (form.readyDeferred?.promise) {
|
|
||||||
try {
|
|
||||||
await form.readyDeferred.promise;
|
|
||||||
} catch (error) {
|
|
||||||
console.error('Error waiting for form ready:', error);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
const username = this.shadowRoot.querySelector('dees-input-text[key="username"]');
|
|
||||||
const password = this.shadowRoot.querySelector('dees-input-text[key="password"]');
|
|
||||||
const submit = this.shadowRoot.querySelector('dees-form-submit');
|
|
||||||
|
|
||||||
// Add form data listener
|
|
||||||
form.addEventListener('formData', (event: CustomEvent) => {
|
|
||||||
this.dispatchEvent(new CustomEvent('login', {
|
|
||||||
detail: event.detail,
|
|
||||||
bubbles: true,
|
|
||||||
composed: true
|
|
||||||
}));
|
|
||||||
});
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* Dispatches a 'login' event when the form is submitted.
|
|
||||||
* Event detail structure: { data: { username: string, password: string } }
|
|
||||||
*/
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* allows switching to slotted content
|
* allows switching to slotted content
|
||||||
*/
|
*/
|
||||||
|
Reference in New Issue
Block a user