@vaadin/login 24.6.5 → 24.7.0-alpha10

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
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vaadin/login",
3
- "version": "24.6.5",
3
+ "version": "24.7.0-alpha10",
4
4
  "publishConfig": {
5
5
  "access": "public"
6
6
  },
@@ -37,20 +37,20 @@
37
37
  "dependencies": {
38
38
  "@open-wc/dedupe-mixin": "^1.3.0",
39
39
  "@polymer/polymer": "^3.0.0",
40
- "@vaadin/button": "~24.6.5",
41
- "@vaadin/component-base": "~24.6.5",
42
- "@vaadin/overlay": "~24.6.5",
43
- "@vaadin/password-field": "~24.6.5",
44
- "@vaadin/text-field": "~24.6.5",
45
- "@vaadin/vaadin-lumo-styles": "~24.6.5",
46
- "@vaadin/vaadin-material-styles": "~24.6.5",
47
- "@vaadin/vaadin-themable-mixin": "~24.6.5",
40
+ "@vaadin/button": "24.7.0-alpha10",
41
+ "@vaadin/component-base": "24.7.0-alpha10",
42
+ "@vaadin/overlay": "24.7.0-alpha10",
43
+ "@vaadin/password-field": "24.7.0-alpha10",
44
+ "@vaadin/text-field": "24.7.0-alpha10",
45
+ "@vaadin/vaadin-lumo-styles": "24.7.0-alpha10",
46
+ "@vaadin/vaadin-material-styles": "24.7.0-alpha10",
47
+ "@vaadin/vaadin-themable-mixin": "24.7.0-alpha10",
48
48
  "lit": "^3.0.0"
49
49
  },
50
50
  "devDependencies": {
51
- "@vaadin/chai-plugins": "~24.6.5",
52
- "@vaadin/checkbox": "~24.6.5",
53
- "@vaadin/test-runner-commands": "~24.6.5",
51
+ "@vaadin/chai-plugins": "24.7.0-alpha10",
52
+ "@vaadin/checkbox": "24.7.0-alpha10",
53
+ "@vaadin/test-runner-commands": "24.7.0-alpha10",
54
54
  "@vaadin/testing-helpers": "^1.1.0",
55
55
  "sinon": "^18.0.0"
56
56
  },
@@ -58,5 +58,5 @@
58
58
  "web-types.json",
59
59
  "web-types.lit.json"
60
60
  ],
61
- "gitHead": "fc109a4234a1f60e89717ab1c0dc8fb4451aa418"
61
+ "gitHead": "c0f8933df2a6a40648d3fb9cfbae6bbf86a8aa90"
62
62
  }
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * @license
3
- * Copyright (c) 2018 - 2024 Vaadin Ltd.
3
+ * Copyright (c) 2018 - 2025 Vaadin Ltd.
4
4
  * This program is available under Apache License Version 2.0, available at https://vaadin.com/license/
5
5
  */
6
6
  import { html, LitElement } from 'lit';
@@ -44,6 +44,13 @@ class LoginFormWrapper extends ThemableMixin(PolylitMixin(LitElement)) {
44
44
  i18n: {
45
45
  type: Object,
46
46
  },
47
+
48
+ /**
49
+ * Used to customize the `aria-level` attribute on the heading element.
50
+ */
51
+ headingLevel: {
52
+ type: Number,
53
+ },
47
54
  };
48
55
  }
49
56
 
@@ -51,7 +58,7 @@ class LoginFormWrapper extends ThemableMixin(PolylitMixin(LitElement)) {
51
58
  render() {
52
59
  return html`
53
60
  <section part="form">
54
- <div part="form-title" role="heading" aria-level="2">${this.i18n.form.title}</div>
61
+ <div part="form-title" role="heading" aria-level="${this.headingLevel}">${this.i18n.form.title}</div>
55
62
  <div part="error-message" ?hidden="${!this.error}">
56
63
  <strong part="error-message-title">${this.i18n.errorMessage.title}</strong>
57
64
  <p part="error-message-description">${this.i18n.errorMessage.message}</p>
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * @license
3
- * Copyright (c) 2018 - 2024 Vaadin Ltd.
3
+ * Copyright (c) 2018 - 2025 Vaadin Ltd.
4
4
  * This program is available under Apache License Version 2.0, available at https://vaadin.com/license/
5
5
  */
6
6
  export * from './vaadin-login-form.js';
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * @license
3
- * Copyright (c) 2018 - 2024 Vaadin Ltd.
3
+ * Copyright (c) 2018 - 2025 Vaadin Ltd.
4
4
  * This program is available under Apache License Version 2.0, available at https://vaadin.com/license/
5
5
  */
6
6
  import '@vaadin/button/src/vaadin-lit-button.js';
@@ -50,12 +50,13 @@ class LoginForm extends LoginFormMixin(ElementMixin(ThemableMixin(PolylitMixin(L
50
50
  theme="${ifDefined(this._theme)}"
51
51
  .error="${this.error}"
52
52
  .i18n="${this.i18n}"
53
+ .headingLevel="${this.headingLevel}"
53
54
  >
54
- <form method="POST" action="${this.action}" @formdata="${this._onFormData}" slot="form">
55
+ <form method="POST" action="${ifDefined(this.action)}" @formdata="${this._onFormData}" slot="form">
55
56
  <input id="csrf" type="hidden" />
56
57
  <vaadin-text-field
57
58
  name="username"
58
- label="${this.i18n.form.username}"
59
+ .label="${this.i18n.form.username}"
59
60
  .errorMessage="${this.i18n.errorMessage.username}"
60
61
  id="vaadinLoginUsername"
61
62
  required
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * @license
3
- * Copyright (c) 2018 - 2024 Vaadin Ltd.
3
+ * Copyright (c) 2018 - 2025 Vaadin Ltd.
4
4
  * This program is available under Apache License Version 2.0, available at https://vaadin.com/license/
5
5
  */
6
6
  import { html, LitElement } from 'lit';
@@ -35,7 +35,7 @@ class LoginOverlayWrapper extends LoginOverlayWrapperMixin(ThemableMixin(Polylit
35
35
  <section part="card">
36
36
  <div part="brand">
37
37
  <slot name="title">
38
- <h1 part="title">${this.title}</h1>
38
+ <div part="title" role="heading" aria-level="${this.headingLevel}">${this.title}</div>
39
39
  </slot>
40
40
  <p part="description">${this.description}</p>
41
41
  </div>
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * @license
3
- * Copyright (c) 2018 - 2024 Vaadin Ltd.
3
+ * Copyright (c) 2018 - 2025 Vaadin Ltd.
4
4
  * This program is available under Apache License Version 2.0, available at https://vaadin.com/license/
5
5
  */
6
6
  export * from './vaadin-login-overlay.js';
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * @license
3
- * Copyright (c) 2018 - 2024 Vaadin Ltd.
3
+ * Copyright (c) 2018 - 2025 Vaadin Ltd.
4
4
  * This program is available under Apache License Version 2.0, available at https://vaadin.com/license/
5
5
  */
6
6
  import './vaadin-lit-login-form.js';
@@ -35,6 +35,7 @@ class LoginOverlay extends LoginOverlayMixin(ElementMixin(ThemableMixin(PolylitM
35
35
  .opened="${this.opened}"
36
36
  .title="${this.title}"
37
37
  .description="${this.description}"
38
+ .headingLevel="${this.headingLevel}"
38
39
  role="dialog"
39
40
  focus-trap
40
41
  with-backdrop
@@ -51,6 +52,7 @@ class LoginOverlay extends LoginOverlayMixin(ElementMixin(ThemableMixin(PolylitM
51
52
  .error="${this.error}"
52
53
  .noAutofocus="${this.noAutofocus}"
53
54
  .noForgotPassword="${this.noForgotPassword}"
55
+ .headingLevel="${this.__computeHeadingLevel(this.headingLevel)}"
54
56
  .i18n="${this.i18n}"
55
57
  @login="${this._retargetEvent}"
56
58
  @forgot-password="${this._retargetEvent}"
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * @license
3
- * Copyright (c) 2018 - 2024 Vaadin Ltd.
3
+ * Copyright (c) 2018 - 2025 Vaadin Ltd.
4
4
  * This program is available under Apache License Version 2.0, available at https://vaadin.com/license/
5
5
  */
6
6
  import type { Constructor } from '@open-wc/dedupe-mixin';
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * @license
3
- * Copyright (c) 2018 - 2024 Vaadin Ltd.
3
+ * Copyright (c) 2018 - 2025 Vaadin Ltd.
4
4
  * This program is available under Apache License Version 2.0, available at https://vaadin.com/license/
5
5
  */
6
6
  import { LoginMixin } from './vaadin-login-mixin.js';
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * @license
3
- * Copyright (c) 2018 - 2024 Vaadin Ltd.
3
+ * Copyright (c) 2018 - 2025 Vaadin Ltd.
4
4
  * This program is available under Apache License Version 2.0, available at https://vaadin.com/license/
5
5
  */
6
6
  import type { CSSResult } from 'lit';
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * @license
3
- * Copyright (c) 2018 - 2024 Vaadin Ltd.
3
+ * Copyright (c) 2018 - 2025 Vaadin Ltd.
4
4
  * This program is available under Apache License Version 2.0, available at https://vaadin.com/license/
5
5
  */
6
6
  import { css } from 'lit';
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * @license
3
- * Copyright (c) 2018 - 2024 Vaadin Ltd.
3
+ * Copyright (c) 2018 - 2025 Vaadin Ltd.
4
4
  * This program is available under Apache License Version 2.0, available at https://vaadin.com/license/
5
5
  */
6
6
  import { html, PolymerElement } from '@polymer/polymer/polymer-element.js';
@@ -23,7 +23,7 @@ class LoginFormWrapper extends ThemableMixin(PolymerElement) {
23
23
  static get template() {
24
24
  return html`
25
25
  <section part="form">
26
- <div part="form-title" part="form-title" role="heading" aria-level="2">[[i18n.form.title]]</div>
26
+ <div part="form-title" part="form-title" role="heading" aria-level$="[[headingLevel]]">[[i18n.form.title]]</div>
27
27
  <div part="error-message" hidden$="[[!error]]">
28
28
  <strong part="error-message-title">[[i18n.errorMessage.title]]</strong>
29
29
  <p part="error-message-description">[[i18n.errorMessage.message]]</p>
@@ -68,6 +68,13 @@ class LoginFormWrapper extends ThemableMixin(PolymerElement) {
68
68
  i18n: {
69
69
  type: Object,
70
70
  },
71
+
72
+ /**
73
+ * Used to customize the `aria-level` attribute on the heading element.
74
+ */
75
+ headingLevel: {
76
+ type: Number,
77
+ },
71
78
  };
72
79
  }
73
80
  }
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * @license
3
- * Copyright (c) 2018 - 2024 Vaadin Ltd.
3
+ * Copyright (c) 2018 - 2025 Vaadin Ltd.
4
4
  * This program is available under Apache License Version 2.0, available at https://vaadin.com/license/
5
5
  */
6
6
  import { ElementMixin } from '@vaadin/component-base/src/element-mixin.js';
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * @license
3
- * Copyright (c) 2018 - 2024 Vaadin Ltd.
3
+ * Copyright (c) 2018 - 2025 Vaadin Ltd.
4
4
  * This program is available under Apache License Version 2.0, available at https://vaadin.com/license/
5
5
  */
6
6
  import '@vaadin/button/src/vaadin-button.js';
@@ -61,7 +61,13 @@ class LoginForm extends LoginFormMixin(ElementMixin(ThemableMixin(PolymerElement
61
61
  width: 100%;
62
62
  }
63
63
  </style>
64
- <vaadin-login-form-wrapper id="vaadinLoginFormWrapper" theme$="[[_theme]]" error="[[error]]" i18n="[[i18n]]">
64
+ <vaadin-login-form-wrapper
65
+ id="vaadinLoginFormWrapper"
66
+ theme$="[[_theme]]"
67
+ error="[[error]]"
68
+ i18n="[[i18n]]"
69
+ heading-level="[[headingLevel]]"
70
+ >
65
71
  <form method="POST" action$="[[action]]" on-formdata="_onFormData" slot="form">
66
72
  <input id="csrf" type="hidden" />
67
73
  <vaadin-text-field
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * @license
3
- * Copyright (c) 2018 - 2024 Vaadin Ltd.
3
+ * Copyright (c) 2018 - 2025 Vaadin Ltd.
4
4
  * This program is available under Apache License Version 2.0, available at https://vaadin.com/license/
5
5
  */
6
6
  import type { Constructor } from '@open-wc/dedupe-mixin';
@@ -93,4 +93,14 @@ export declare class LoginMixinClass {
93
93
  * ```
94
94
  */
95
95
  i18n: LoginI18n;
96
+
97
+ /**
98
+ * Sets the root heading level (`aria-level`) for the heading hierarchy. Default value: 1.
99
+ * Child headings automatically increment from this base level i.e. standalone login form
100
+ * renders its title as `<h1>`, whereas the form in the overlay uses `<h2>`, as the `<h1>`
101
+ * element is used by the overlay's own title.
102
+ *
103
+ * @attr {number} heading-level
104
+ */
105
+ headingLevel: number;
96
106
  }
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * @license
3
- * Copyright (c) 2018 - 2024 Vaadin Ltd.
3
+ * Copyright (c) 2018 - 2025 Vaadin Ltd.
4
4
  * This program is available under Apache License Version 2.0, available at https://vaadin.com/license/
5
5
  */
6
6
 
@@ -134,6 +134,19 @@ export const LoginMixin = (superClass) =>
134
134
  },
135
135
  },
136
136
 
137
+ /**
138
+ * Sets the root heading level (`aria-level`) for the heading hierarchy. Default value: 1.
139
+ * Child headings automatically increment from this base level i.e. standalone login form
140
+ * renders its title as `<h1>`, whereas the form in the overlay uses `<h2>`, as the `<h1>`
141
+ * element is used by the overlay's own title.
142
+ *
143
+ * @attr {number} heading-level
144
+ */
145
+ headingLevel: {
146
+ type: Number,
147
+ value: 1,
148
+ },
149
+
137
150
  /**
138
151
  * If set, prevents auto enabling the component when error property is set to true.
139
152
  * @private
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * @license
3
- * Copyright (c) 2018 - 2024 Vaadin Ltd.
3
+ * Copyright (c) 2018 - 2025 Vaadin Ltd.
4
4
  * This program is available under Apache License Version 2.0, available at https://vaadin.com/license/
5
5
  */
6
6
  import type { Constructor } from '@open-wc/dedupe-mixin';
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * @license
3
- * Copyright (c) 2018 - 2024 Vaadin Ltd.
3
+ * Copyright (c) 2018 - 2025 Vaadin Ltd.
4
4
  * This program is available under Apache License Version 2.0, available at https://vaadin.com/license/
5
5
  */
6
6
  import { OverlayClassMixin } from '@vaadin/component-base/src/overlay-class-mixin.js';
@@ -107,14 +107,9 @@ export const LoginOverlayMixin = (superClass) =>
107
107
  }
108
108
 
109
109
  /** @private */
110
- async _onOpenedChange() {
110
+ _onOpenedChange() {
111
111
  const form = this.$.vaadinLoginForm;
112
112
 
113
- // Wait for initial render on overlay initialization
114
- if (!form.$ && this.updateComplete) {
115
- await this.updateComplete;
116
- }
117
-
118
113
  if (!this.opened) {
119
114
  form.$.vaadinLoginUsername.value = '';
120
115
  form.$.vaadinLoginPassword.value = '';
@@ -164,4 +159,9 @@ export const LoginOverlayMixin = (superClass) =>
164
159
  this.append(...teleported);
165
160
  };
166
161
  }
162
+
163
+ /** @private */
164
+ __computeHeadingLevel(headingLevel) {
165
+ return headingLevel + 1;
166
+ }
167
167
  };
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * @license
3
- * Copyright (c) 2018 - 2024 Vaadin Ltd.
3
+ * Copyright (c) 2018 - 2025 Vaadin Ltd.
4
4
  * This program is available under Apache License Version 2.0, available at https://vaadin.com/license/
5
5
  */
6
6
  import { DirMixin } from '@vaadin/component-base/src/dir-mixin.js';
@@ -31,6 +31,13 @@ export const LoginOverlayWrapperMixin = (superClass) =>
31
31
  description: {
32
32
  type: String,
33
33
  },
34
+
35
+ /**
36
+ * Used to customize the `aria-level` attribute on the heading element.
37
+ */
38
+ headingLevel: {
39
+ type: Number,
40
+ },
34
41
  };
35
42
  }
36
43
 
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * @license
3
- * Copyright (c) 2018 - 2024 Vaadin Ltd.
3
+ * Copyright (c) 2018 - 2025 Vaadin Ltd.
4
4
  * This program is available under Apache License Version 2.0, available at https://vaadin.com/license/
5
5
  */
6
6
  import type { CSSResult } from 'lit';
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * @license
3
- * Copyright (c) 2018 - 2024 Vaadin Ltd.
3
+ * Copyright (c) 2018 - 2025 Vaadin Ltd.
4
4
  * This program is available under Apache License Version 2.0, available at https://vaadin.com/license/
5
5
  */
6
6
  import { css } from 'lit';
@@ -28,7 +28,7 @@ export const loginOverlayWrapperStyles = css`
28
28
  justify-content: flex-end;
29
29
  }
30
30
 
31
- [part='brand'] h1 {
31
+ [part='title'] {
32
32
  color: inherit;
33
33
  margin: 0;
34
34
  }
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * @license
3
- * Copyright (c) 2018 - 2024 Vaadin Ltd.
3
+ * Copyright (c) 2018 - 2025 Vaadin Ltd.
4
4
  * This program is available under Apache License Version 2.0, available at https://vaadin.com/license/
5
5
  */
6
6
  import { html, PolymerElement } from '@polymer/polymer/polymer-element.js';
@@ -35,7 +35,7 @@ class LoginOverlayWrapper extends LoginOverlayWrapperMixin(ThemableMixin(Polymer
35
35
  <section part="card">
36
36
  <div part="brand">
37
37
  <slot name="title">
38
- <h1 part="title">[[title]]</h1>
38
+ <div part="title" role="heading" aria-level$="[[headingLevel]]">[[title]]</div>
39
39
  </slot>
40
40
  <p part="description">[[description]]</p>
41
41
  </div>
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * @license
3
- * Copyright (c) 2018 - 2024 Vaadin Ltd.
3
+ * Copyright (c) 2018 - 2025 Vaadin Ltd.
4
4
  * This program is available under Apache License Version 2.0, available at https://vaadin.com/license/
5
5
  */
6
6
  import { ElementMixin } from '@vaadin/component-base/src/element-mixin.js';
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * @license
3
- * Copyright (c) 2018 - 2024 Vaadin Ltd.
3
+ * Copyright (c) 2018 - 2025 Vaadin Ltd.
4
4
  * This program is available under Apache License Version 2.0, available at https://vaadin.com/license/
5
5
  */
6
6
  import './vaadin-login-form.js';
@@ -61,6 +61,7 @@ class LoginOverlay extends LoginOverlayMixin(ElementMixin(ThemableMixin(PolymerE
61
61
  with-backdrop
62
62
  title="[[title]]"
63
63
  description="[[description]]"
64
+ heading-level="[[headingLevel]]"
64
65
  theme$="[[_theme]]"
65
66
  on-vaadin-overlay-escape-press="_preventClosingLogin"
66
67
  on-vaadin-overlay-outside-click="_preventClosingLogin"
@@ -71,6 +72,7 @@ class LoginOverlay extends LoginOverlayMixin(ElementMixin(ThemableMixin(PolymerE
71
72
  action="[[action]]"
72
73
  disabled="{{disabled}}"
73
74
  error="{{error}}"
75
+ heading-level="[[__computeHeadingLevel(headingLevel)]]"
74
76
  no-autofocus="[[noAutofocus]]"
75
77
  no-forgot-password="[[noForgotPassword]]"
76
78
  i18n="{{i18n}}"
@@ -29,6 +29,12 @@ const loginOverlayWrapper = css`
29
29
  min-height: calc(var(--lumo-size-m) * 5);
30
30
  }
31
31
 
32
+ [part='title'] {
33
+ font-size: var(--lumo-font-size-xxxl);
34
+ font-weight: 600;
35
+ line-height: var(--lumo-line-height-xs);
36
+ }
37
+
32
38
  [part='description'] {
33
39
  line-height: var(--lumo-line-height-s);
34
40
  color: var(--lumo-tint-70pct);
@@ -58,11 +58,14 @@ const loginOverlayWrapper = css`
58
58
  min-height: 225px;
59
59
  }
60
60
 
61
- [part='brand'] h1 {
61
+ [part='title'] {
62
62
  color: inherit;
63
63
  margin: 0;
64
64
  font-weight: 500;
65
65
  font-size: 2rem;
66
+ line-height: 1.1;
67
+ letter-spacing: -0.015em;
68
+ text-indent: -0.07em;
66
69
  }
67
70
 
68
71
  [part='form'] {
@@ -91,7 +94,7 @@ const loginOverlayWrapper = css`
91
94
  padding: 0 2.5rem 5.5rem 2rem;
92
95
  }
93
96
 
94
- [part='brand'] h1 {
97
+ [part='title'] {
95
98
  font-weight: 500;
96
99
  font-size: 1.8rem;
97
100
  text-indent: 1rem;
@@ -210,7 +213,7 @@ const loginOverlayWrapper = css`
210
213
  box-sizing: border-box;
211
214
  }
212
215
 
213
- [part='brand'] h1 {
216
+ [part='title'] {
214
217
  font-size: 2.5em;
215
218
  }
216
219
 
package/web-types.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "$schema": "https://json.schemastore.org/web-types",
3
3
  "name": "@vaadin/login",
4
- "version": "24.6.5",
4
+ "version": "24.7.0-alpha10",
5
5
  "description-markup": "markdown",
6
6
  "contributions": {
7
7
  "html": {
@@ -56,6 +56,17 @@
56
56
  ]
57
57
  }
58
58
  },
59
+ {
60
+ "name": "heading-level",
61
+ "description": "Sets the root heading level (`aria-level`) for the heading hierarchy. Default value: 1.\nChild headings automatically increment from this base level i.e. standalone login form\nrenders its title as `<h1>`, whereas the form in the overlay uses `<h2>`, as the `<h1>`\nelement is used by the overlay's own title.",
62
+ "value": {
63
+ "type": [
64
+ "number",
65
+ "null",
66
+ "undefined"
67
+ ]
68
+ }
69
+ },
59
70
  {
60
71
  "name": "theme",
61
72
  "description": "The theme variants to apply to the component.",
@@ -124,6 +135,17 @@
124
135
  "LoginI18n"
125
136
  ]
126
137
  }
138
+ },
139
+ {
140
+ "name": "headingLevel",
141
+ "description": "Sets the root heading level (`aria-level`) for the heading hierarchy. Default value: 1.\nChild headings automatically increment from this base level i.e. standalone login form\nrenders its title as `<h1>`, whereas the form in the overlay uses `<h2>`, as the `<h1>`\nelement is used by the overlay's own title.",
142
+ "value": {
143
+ "type": [
144
+ "number",
145
+ "null",
146
+ "undefined"
147
+ ]
148
+ }
127
149
  }
128
150
  ],
129
151
  "events": [
@@ -148,7 +170,7 @@
148
170
  },
149
171
  {
150
172
  "name": "vaadin-login-overlay",
151
- "description": "`<vaadin-login-overlay>` is a wrapper of the `<vaadin-login-form>` which opens a login form in an overlay and\nhaving an additional `brand` part for application title and description. Using `<vaadin-login-overlay>` allows\npassword managers to work with login form.\n\n```\n<vaadin-login-overlay opened></vaadin-login-overlay>\n```\n\n### Styling\n\nThe component doesn't have a shadowRoot, so the `<form>` and input fields can be styled from a global scope.\nUse `<vaadin-login-overlay-wrapper>` and `<vaadin-login-form-wrapper>` to apply styles.\n\nThe following shadow DOM parts of the `<vaadin-login-overlay-wrapper>` are available for styling:\n\nPart name | Description\n----------------|---------------------------------------------------------|\n`card` | Container for the entire component's content\n`brand` | Container for application title and description\n`form` | Container for the `<vaadin-login-form>` component\n\nSee [Styling Components](https://vaadin.com/docs/latest/styling/styling-components) documentation.\n\nSee [`<vaadin-login-form>`](https://cdn.vaadin.com/vaadin-web-components/24.6.5/#/elements/vaadin-login-form)\ndocumentation for `<vaadin-login-form-wrapper>` stylable parts.",
173
+ "description": "`<vaadin-login-overlay>` is a wrapper of the `<vaadin-login-form>` which opens a login form in an overlay and\nhaving an additional `brand` part for application title and description. Using `<vaadin-login-overlay>` allows\npassword managers to work with login form.\n\n```\n<vaadin-login-overlay opened></vaadin-login-overlay>\n```\n\n### Styling\n\nThe component doesn't have a shadowRoot, so the `<form>` and input fields can be styled from a global scope.\nUse `<vaadin-login-overlay-wrapper>` and `<vaadin-login-form-wrapper>` to apply styles.\n\nThe following shadow DOM parts of the `<vaadin-login-overlay-wrapper>` are available for styling:\n\nPart name | Description\n----------------|---------------------------------------------------------|\n`card` | Container for the entire component's content\n`brand` | Container for application title and description\n`form` | Container for the `<vaadin-login-form>` component\n\nSee [Styling Components](https://vaadin.com/docs/latest/styling/styling-components) documentation.\n\nSee [`<vaadin-login-form>`](https://cdn.vaadin.com/vaadin-web-components/24.7.0-alpha10/#/elements/vaadin-login-form)\ndocumentation for `<vaadin-login-form-wrapper>` stylable parts.",
152
174
  "attributes": [
153
175
  {
154
176
  "name": "action",
@@ -196,6 +218,17 @@
196
218
  ]
197
219
  }
198
220
  },
221
+ {
222
+ "name": "heading-level",
223
+ "description": "Sets the root heading level (`aria-level`) for the heading hierarchy. Default value: 1.\nChild headings automatically increment from this base level i.e. standalone login form\nrenders its title as `<h1>`, whereas the form in the overlay uses `<h2>`, as the `<h1>`\nelement is used by the overlay's own title.",
224
+ "value": {
225
+ "type": [
226
+ "number",
227
+ "null",
228
+ "undefined"
229
+ ]
230
+ }
231
+ },
199
232
  {
200
233
  "name": "overlay-class",
201
234
  "description": "A space-delimited list of CSS class names to set on the overlay element.\nThis property does not affect other CSS class names set manually via JS.\n\nNote, if the CSS class name was set with this property, clearing it will\nremove it from the overlay, even if the same class name was also added\nmanually, e.g. by using `classList.add()` in the `renderer` function.",
@@ -303,6 +336,17 @@
303
336
  ]
304
337
  }
305
338
  },
339
+ {
340
+ "name": "headingLevel",
341
+ "description": "Sets the root heading level (`aria-level`) for the heading hierarchy. Default value: 1.\nChild headings automatically increment from this base level i.e. standalone login form\nrenders its title as `<h1>`, whereas the form in the overlay uses `<h2>`, as the `<h1>`\nelement is used by the overlay's own title.",
342
+ "value": {
343
+ "type": [
344
+ "number",
345
+ "null",
346
+ "undefined"
347
+ ]
348
+ }
349
+ },
306
350
  {
307
351
  "name": "overlayClass",
308
352
  "description": "A space-delimited list of CSS class names to set on the overlay element.\nThis property does not affect other CSS class names set manually via JS.\n\nNote, if the CSS class name was set with this property, clearing it will\nremove it from the overlay, even if the same class name was also added\nmanually, e.g. by using `classList.add()` in the `renderer` function.",
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "$schema": "https://json.schemastore.org/web-types",
3
3
  "name": "@vaadin/login",
4
- "version": "24.6.5",
4
+ "version": "24.7.0-alpha10",
5
5
  "description-markup": "markdown",
6
6
  "framework": "lit",
7
7
  "framework-config": {
@@ -61,6 +61,13 @@
61
61
  "kind": "expression"
62
62
  }
63
63
  },
64
+ {
65
+ "name": ".headingLevel",
66
+ "description": "Sets the root heading level (`aria-level`) for the heading hierarchy. Default value: 1.\nChild headings automatically increment from this base level i.e. standalone login form\nrenders its title as `<h1>`, whereas the form in the overlay uses `<h2>`, as the `<h1>`\nelement is used by the overlay's own title.",
67
+ "value": {
68
+ "kind": "expression"
69
+ }
70
+ },
64
71
  {
65
72
  "name": "@forgot-password",
66
73
  "description": "Fired when user clicks on the \"Forgot password\" button.",
@@ -93,7 +100,7 @@
93
100
  },
94
101
  {
95
102
  "name": "vaadin-login-overlay",
96
- "description": "`<vaadin-login-overlay>` is a wrapper of the `<vaadin-login-form>` which opens a login form in an overlay and\nhaving an additional `brand` part for application title and description. Using `<vaadin-login-overlay>` allows\npassword managers to work with login form.\n\n```\n<vaadin-login-overlay opened></vaadin-login-overlay>\n```\n\n### Styling\n\nThe component doesn't have a shadowRoot, so the `<form>` and input fields can be styled from a global scope.\nUse `<vaadin-login-overlay-wrapper>` and `<vaadin-login-form-wrapper>` to apply styles.\n\nThe following shadow DOM parts of the `<vaadin-login-overlay-wrapper>` are available for styling:\n\nPart name | Description\n----------------|---------------------------------------------------------|\n`card` | Container for the entire component's content\n`brand` | Container for application title and description\n`form` | Container for the `<vaadin-login-form>` component\n\nSee [Styling Components](https://vaadin.com/docs/latest/styling/styling-components) documentation.\n\nSee [`<vaadin-login-form>`](https://cdn.vaadin.com/vaadin-web-components/24.6.5/#/elements/vaadin-login-form)\ndocumentation for `<vaadin-login-form-wrapper>` stylable parts.",
103
+ "description": "`<vaadin-login-overlay>` is a wrapper of the `<vaadin-login-form>` which opens a login form in an overlay and\nhaving an additional `brand` part for application title and description. Using `<vaadin-login-overlay>` allows\npassword managers to work with login form.\n\n```\n<vaadin-login-overlay opened></vaadin-login-overlay>\n```\n\n### Styling\n\nThe component doesn't have a shadowRoot, so the `<form>` and input fields can be styled from a global scope.\nUse `<vaadin-login-overlay-wrapper>` and `<vaadin-login-form-wrapper>` to apply styles.\n\nThe following shadow DOM parts of the `<vaadin-login-overlay-wrapper>` are available for styling:\n\nPart name | Description\n----------------|---------------------------------------------------------|\n`card` | Container for the entire component's content\n`brand` | Container for application title and description\n`form` | Container for the `<vaadin-login-form>` component\n\nSee [Styling Components](https://vaadin.com/docs/latest/styling/styling-components) documentation.\n\nSee [`<vaadin-login-form>`](https://cdn.vaadin.com/vaadin-web-components/24.7.0-alpha10/#/elements/vaadin-login-form)\ndocumentation for `<vaadin-login-form-wrapper>` stylable parts.",
97
104
  "extension": true,
98
105
  "attributes": [
99
106
  {
@@ -145,6 +152,13 @@
145
152
  "kind": "expression"
146
153
  }
147
154
  },
155
+ {
156
+ "name": ".headingLevel",
157
+ "description": "Sets the root heading level (`aria-level`) for the heading hierarchy. Default value: 1.\nChild headings automatically increment from this base level i.e. standalone login form\nrenders its title as `<h1>`, whereas the form in the overlay uses `<h2>`, as the `<h1>`\nelement is used by the overlay's own title.",
158
+ "value": {
159
+ "kind": "expression"
160
+ }
161
+ },
148
162
  {
149
163
  "name": ".overlayClass",
150
164
  "description": "A space-delimited list of CSS class names to set on the overlay element.\nThis property does not affect other CSS class names set manually via JS.\n\nNote, if the CSS class name was set with this property, clearing it will\nremove it from the overlay, even if the same class name was also added\nmanually, e.g. by using `classList.add()` in the `renderer` function.",