UNPKG

@progressive-development/pd-page

Version:

Progressive development page helper, teaser, menu, footer.

66 lines 2.88 kB
import { LitElement, CSSResultGroup } from 'lit'; /** * Login form component for email/password authentication. * * This is a pure UI component that emits events for login attempts. * The actual authentication logic should be handled by the parent component. * * Supports two views: * - **login**: Default login form with email and password fields. * - **forgot-password**: Password reset request form with email field only. * * @summary Login form with email and password fields, including forgot password flow. * * @tagname pd-login * * @event login-attempt - Fired when user submits valid credentials. Detail: `LoginAttemptDetail`. * @event forgot-password-attempt - Fired when user requests password reset. Detail: `ForgotPasswordAttemptDetail`. * @event view-change - Fired when the form switches between the login and forgot-password views. Detail: `ViewChangeDetail`. The owner should clear any externally controlled `errorMessage` in response, since it belongs to the view being left. * * @cssprop --pd-login-bg-color - Form background color. Default: `var(--pd-default-bg-light-col)`. * @cssprop --pd-login-border-radius - Form border radius. Default: `var(--pd-radius-md)`. * @cssprop --pd-login-max-width - Maximum width of the form. Default: `500px`. * @cssprop --pd-login-padding - Form padding. Default: `1rem 0 1rem 1rem`. */ export declare class PdLogin extends LitElement { /** Shows loading state on the submit button. */ loading: boolean; /** Error message to display. */ errorMessage: string; /** Success message to display (e.g., after password reset request). */ successMessage: string; /** Hide the forgot password link. */ hideForgotPassword: boolean; /** Current view: login form or forgot password form (internal). */ private _view; private _validForm; private _forgotPasswordValidForm; private _prefillEmail; /** @ignore */ private _formElement; /** @ignore */ private _forgotPasswordFormElement; static styles: CSSResultGroup; render(): import('lit').TemplateResult<1>; private _renderLoginView; private _renderForgotPasswordView; /** Clears the form and resets validation state. */ clear(): void; private _handleFormChange; private _handleSubmit; /** * Central view switch. Emits `view-change` so the owner can clear the * externally controlled `errorMessage` (which belongs to the view being * left). The component never mutates `errorMessage` itself. */ private _setView; private _handleForgotPassword; private _handleForgotPasswordFormChange; private _handleForgotPasswordSubmit; private _handleBackToLogin; /** Switch to forgot password view. */ showForgotPassword(): void; /** Switch back to login view. */ showLogin(): void; } //# sourceMappingURL=PdLogin.d.ts.map