@vaadin/app-layout 25.0.0-alpha10 → 25.0.0-alpha12

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/app-layout",
3
- "version": "25.0.0-alpha10",
3
+ "version": "25.0.0-alpha12",
4
4
  "publishConfig": {
5
5
  "access": "public"
6
6
  },
@@ -21,9 +21,6 @@
21
21
  "type": "module",
22
22
  "files": [
23
23
  "src",
24
- "!src/styles/*-base-styles.d.ts",
25
- "!src/styles/*-base-styles.js",
26
- "theme",
27
24
  "vaadin-*.d.ts",
28
25
  "vaadin-*.js",
29
26
  "web-types.json",
@@ -37,22 +34,22 @@
37
34
  ],
38
35
  "dependencies": {
39
36
  "@open-wc/dedupe-mixin": "^1.3.0",
40
- "@vaadin/a11y-base": "25.0.0-alpha10",
41
- "@vaadin/button": "25.0.0-alpha10",
42
- "@vaadin/component-base": "25.0.0-alpha10",
43
- "@vaadin/vaadin-lumo-styles": "25.0.0-alpha10",
44
- "@vaadin/vaadin-themable-mixin": "25.0.0-alpha10",
37
+ "@vaadin/a11y-base": "25.0.0-alpha12",
38
+ "@vaadin/button": "25.0.0-alpha12",
39
+ "@vaadin/component-base": "25.0.0-alpha12",
40
+ "@vaadin/vaadin-themable-mixin": "25.0.0-alpha12",
45
41
  "lit": "^3.0.0"
46
42
  },
47
43
  "devDependencies": {
48
- "@vaadin/chai-plugins": "25.0.0-alpha10",
49
- "@vaadin/test-runner-commands": "25.0.0-alpha10",
44
+ "@vaadin/chai-plugins": "25.0.0-alpha12",
45
+ "@vaadin/test-runner-commands": "25.0.0-alpha12",
50
46
  "@vaadin/testing-helpers": "^2.0.0",
47
+ "@vaadin/vaadin-lumo-styles": "25.0.0-alpha12",
51
48
  "sinon": "^18.0.0"
52
49
  },
53
50
  "web-types": [
54
51
  "web-types.json",
55
52
  "web-types.lit.json"
56
53
  ],
57
- "gitHead": "6cc6c94079e805fa5b2f0af4dbf3b2a7485e57d0"
54
+ "gitHead": "e75527348f9ba7c363d068c868b9f030c15b84a1"
58
55
  }
@@ -3,7 +3,7 @@
3
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
- import '@vaadin/component-base/src/style-props.js';
6
+ import '@vaadin/component-base/src/styles/style-props.js';
7
7
  import { css } from 'lit';
8
8
 
9
9
  export const appLayoutStyles = css`
@@ -116,7 +116,7 @@ export const appLayoutStyles = css`
116
116
  visibility: hidden;
117
117
  display: flex;
118
118
  flex-direction: column;
119
- background: var(--vaadin-app-layout-drawer-background, var(--vaadin-background-color));
119
+ background: var(--vaadin-app-layout-drawer-background, transparent);
120
120
  }
121
121
 
122
122
  :host([drawer-opened]) [part='drawer'] {
@@ -146,6 +146,7 @@ export const appLayoutStyles = css`
146
146
  top: 0;
147
147
  bottom: 0;
148
148
  box-shadow: var(--vaadin-overlay-box-shadow, 0 8px 24px -4px rgba(0, 0, 0, 0.3));
149
+ background: var(--vaadin-app-layout-drawer-background, var(--vaadin-background-color));
149
150
  }
150
151
 
151
152
  :host([overlay]) [part='drawer'],
@@ -3,7 +3,7 @@
3
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
- import '@vaadin/component-base/src/style-props.js';
6
+ import '@vaadin/component-base/src/styles/style-props.js';
7
7
  import { css } from 'lit';
8
8
 
9
9
  export const drawerToggle = css`
@@ -11,7 +11,7 @@ import { ElementMixin } from '@vaadin/component-base/src/element-mixin.js';
11
11
  import { PolylitMixin } from '@vaadin/component-base/src/polylit-mixin.js';
12
12
  import { LumoInjectionMixin } from '@vaadin/vaadin-themable-mixin/lumo-injection-mixin.js';
13
13
  import { ThemableMixin } from '@vaadin/vaadin-themable-mixin/vaadin-themable-mixin.js';
14
- import { appLayoutStyles } from './styles/vaadin-app-layout-core-styles.js';
14
+ import { appLayoutStyles } from './styles/vaadin-app-layout-base-styles.js';
15
15
  import { AppLayoutMixin } from './vaadin-app-layout-mixin.js';
16
16
 
17
17
  /**
@@ -4,7 +4,7 @@
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';
7
- import { buttonStyles } from '@vaadin/button/src/styles/vaadin-button-core-styles.js';
7
+ import { buttonStyles } from '@vaadin/button/src/styles/vaadin-button-base-styles.js';
8
8
  import { ButtonMixin } from '@vaadin/button/src/vaadin-button-mixin.js';
9
9
  import { defineCustomElement } from '@vaadin/component-base/src/define.js';
10
10
  import { DirMixin } from '@vaadin/component-base/src/dir-mixin.js';
@@ -12,7 +12,7 @@ import { isEmptyTextNode } from '@vaadin/component-base/src/dom-utils.js';
12
12
  import { PolylitMixin } from '@vaadin/component-base/src/polylit-mixin.js';
13
13
  import { LumoInjectionMixin } from '@vaadin/vaadin-themable-mixin/lumo-injection-mixin.js';
14
14
  import { ThemableMixin } from '@vaadin/vaadin-themable-mixin/vaadin-themable-mixin.js';
15
- import { drawerToggle } from './styles/vaadin-drawer-toggle-core-styles.js';
15
+ import { drawerToggle } from './styles/vaadin-drawer-toggle-base-styles.js';
16
16
 
17
17
  /**
18
18
  * The Drawer Toggle component controls the drawer in App Layout component.
@@ -1,2 +1,2 @@
1
- import './theme/lumo/vaadin-app-layout.js';
1
+ import './src/vaadin-app-layout.js';
2
2
  export * from './src/vaadin-app-layout.js';
@@ -1,2 +1,2 @@
1
- import './theme/lumo/vaadin-drawer-toggle.js';
1
+ import './src/vaadin-drawer-toggle.js';
2
2
  export * from './src/vaadin-drawer-toggle.js';
package/web-types.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "$schema": "https://json.schemastore.org/web-types",
3
3
  "name": "@vaadin/app-layout",
4
- "version": "25.0.0-alpha10",
4
+ "version": "25.0.0-alpha12",
5
5
  "description-markup": "markdown",
6
6
  "contributions": {
7
7
  "html": {
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "$schema": "https://json.schemastore.org/web-types",
3
3
  "name": "@vaadin/app-layout",
4
- "version": "25.0.0-alpha10",
4
+ "version": "25.0.0-alpha12",
5
5
  "description-markup": "markdown",
6
6
  "framework": "lit",
7
7
  "framework-config": {
@@ -1,8 +0,0 @@
1
- /**
2
- * @license
3
- * Copyright (c) 2018 - 2025 Vaadin Ltd.
4
- * This program is available under Apache License Version 2.0, available at https://vaadin.com/license/
5
- */
6
- import type { CSSResult } from 'lit';
7
-
8
- export const appLayoutStyles: CSSResult;
@@ -1,166 +0,0 @@
1
- /**
2
- * @license
3
- * Copyright (c) 2018 - 2025 Vaadin Ltd.
4
- * This program is available under Apache License Version 2.0, available at https://vaadin.com/license/
5
- */
6
- import { css } from 'lit';
7
-
8
- export const appLayoutStyles = css`
9
- :host {
10
- display: block;
11
- box-sizing: border-box;
12
- height: 100%;
13
- --vaadin-app-layout-transition-duration: 200ms;
14
- transition: padding var(--vaadin-app-layout-transition-duration);
15
- --_vaadin-app-layout-drawer-width: var(--vaadin-app-layout-drawer-width, 16em);
16
- --vaadin-app-layout-touch-optimized: false;
17
- --vaadin-app-layout-navbar-offset-top: var(--_vaadin-app-layout-navbar-offset-size);
18
- --vaadin-app-layout-navbar-offset-bottom: var(--_vaadin-app-layout-navbar-offset-size-bottom);
19
- padding-block: var(--vaadin-app-layout-navbar-offset-top) var(--vaadin-app-layout-navbar-offset-bottom);
20
- padding-inline-start: var(--vaadin-app-layout-navbar-offset-left);
21
- }
22
-
23
- :host([hidden]),
24
- [hidden] {
25
- display: none !important;
26
- }
27
-
28
- :host([no-anim]) {
29
- --vaadin-app-layout-transition-duration: 0s !important;
30
- }
31
-
32
- :host([drawer-opened]) {
33
- --vaadin-app-layout-drawer-offset-left: var(--_vaadin-app-layout-drawer-offset-size);
34
- }
35
-
36
- :host([overlay]) {
37
- --vaadin-app-layout-drawer-offset-left: 0;
38
- --vaadin-app-layout-navbar-offset-left: 0;
39
- }
40
-
41
- :host(:not([no-scroll])) [content] {
42
- overflow: auto;
43
- }
44
-
45
- [content] {
46
- height: 100%;
47
- }
48
-
49
- @media (pointer: coarse) and (max-width: 800px) and (min-height: 500px) {
50
- :host {
51
- --vaadin-app-layout-touch-optimized: true;
52
- }
53
- }
54
-
55
- [part='navbar'] {
56
- position: fixed;
57
- display: flex;
58
- align-items: center;
59
- top: 0;
60
- inset-inline: 0;
61
- transition: inset-inline-start var(--vaadin-app-layout-transition-duration);
62
- padding-top: var(--safe-area-inset-top);
63
- padding-left: var(--safe-area-inset-left);
64
- padding-right: var(--safe-area-inset-right);
65
- z-index: 1;
66
- }
67
-
68
- :host([primary-section='drawer'][drawer-opened]:not([overlay])) [part='navbar'] {
69
- inset-inline-start: var(--vaadin-app-layout-drawer-offset-left, 0);
70
- }
71
-
72
- :host([primary-section='drawer']) [part='drawer'] {
73
- top: 0;
74
- }
75
-
76
- [part='navbar'][bottom] {
77
- top: auto;
78
- bottom: 0;
79
- padding-bottom: var(--safe-area-inset-bottom);
80
- }
81
-
82
- [part='drawer'] {
83
- overflow: auto;
84
- position: fixed;
85
- top: var(--vaadin-app-layout-navbar-offset-top, 0);
86
- bottom: var(--vaadin-app-layout-navbar-offset-bottom, var(--vaadin-viewport-offset-bottom, 0));
87
- inset-inline: var(--vaadin-app-layout-navbar-offset-left, 0) auto;
88
- transition:
89
- transform var(--vaadin-app-layout-transition-duration),
90
- visibility var(--vaadin-app-layout-transition-duration);
91
- transform: translateX(-100%);
92
- max-width: 90%;
93
- width: var(--_vaadin-app-layout-drawer-width);
94
- box-sizing: border-box;
95
- padding: var(--safe-area-inset-top) 0 var(--safe-area-inset-bottom) var(--safe-area-inset-left);
96
- outline: none;
97
- /* The drawer should be inaccessible by the tabbing navigation when it is closed. */
98
- visibility: hidden;
99
- display: flex;
100
- flex-direction: column;
101
- }
102
-
103
- :host([drawer-opened]) [part='drawer'] {
104
- /* The drawer should be accessible by the tabbing navigation when it is opened. */
105
- visibility: visible;
106
- transform: translateX(0%);
107
- touch-action: manipulation;
108
- }
109
-
110
- [part='backdrop'] {
111
- background-color: #000;
112
- opacity: 0.3;
113
- }
114
-
115
- :host(:not([drawer-opened])) [part='backdrop'] {
116
- opacity: 0;
117
- }
118
-
119
- :host([overlay]) [part='backdrop'] {
120
- position: fixed;
121
- inset: 0;
122
- pointer-events: none;
123
- transition: opacity var(--vaadin-app-layout-transition-duration);
124
- -webkit-tap-highlight-color: transparent;
125
- }
126
-
127
- :host([overlay]) [part='drawer'] {
128
- top: 0;
129
- bottom: 0;
130
- }
131
-
132
- :host([overlay]) [part='drawer'],
133
- :host([overlay]) [part='backdrop'] {
134
- z-index: 2;
135
- }
136
-
137
- :host([drawer-opened][overlay]) [part='backdrop'] {
138
- pointer-events: auto;
139
- touch-action: manipulation;
140
- }
141
-
142
- :host([dir='rtl']) [part='drawer'] {
143
- transform: translateX(100%);
144
- }
145
-
146
- :host([dir='rtl'][drawer-opened]) [part='drawer'] {
147
- transform: translateX(0%);
148
- }
149
-
150
- :host([drawer-opened]:not([overlay])) {
151
- padding-inline-start: var(--vaadin-app-layout-drawer-offset-left);
152
- }
153
-
154
- @media (max-width: 800px), (max-height: 600px) {
155
- :host {
156
- --vaadin-app-layout-drawer-overlay: true;
157
- --_vaadin-app-layout-drawer-width: var(--vaadin-app-layout-drawer-width, 20em);
158
- }
159
- }
160
-
161
- /* If a vaadin-scroller is used in the drawer, allow it to take all remaining space and contain scrolling */
162
- [part='drawer'] ::slotted(vaadin-scroller) {
163
- flex: 1;
164
- overscroll-behavior: contain;
165
- }
166
- `;
@@ -1,8 +0,0 @@
1
- /**
2
- * @license
3
- * Copyright (c) 2018 - 2025 Vaadin Ltd.
4
- * This program is available under Apache License Version 2.0, available at https://vaadin.com/license/
5
- */
6
- import type { CSSResult } from 'lit';
7
-
8
- export const drawerToggle: CSSResult;
@@ -1,43 +0,0 @@
1
- /**
2
- * @license
3
- * Copyright (c) 2018 - 2025 Vaadin Ltd.
4
- * This program is available under Apache License Version 2.0, available at https://vaadin.com/license/
5
- */
6
- import { css } from 'lit';
7
-
8
- export const drawerToggle = css`
9
- :host {
10
- display: inline-flex;
11
- align-items: center;
12
- justify-content: center;
13
- cursor: default;
14
- position: relative;
15
- outline: none;
16
- height: 24px;
17
- width: 24px;
18
- padding: 4px;
19
- }
20
-
21
- [part='icon'],
22
- [part='icon']::after,
23
- [part='icon']::before {
24
- position: absolute;
25
- top: 8px;
26
- height: 3px;
27
- width: 24px;
28
- background-color: #000;
29
- }
30
-
31
- [part='icon']::after,
32
- [part='icon']::before {
33
- content: '';
34
- }
35
-
36
- [part='icon']::after {
37
- top: 6px;
38
- }
39
-
40
- [part='icon']::before {
41
- top: 12px;
42
- }
43
- `;
@@ -1,3 +0,0 @@
1
- import '@vaadin/vaadin-lumo-styles/color.js';
2
- import '@vaadin/vaadin-lumo-styles/spacing.js';
3
- import '@vaadin/vaadin-lumo-styles/typography.js';
@@ -1,56 +0,0 @@
1
- import '@vaadin/vaadin-lumo-styles/color.js';
2
- import '@vaadin/vaadin-lumo-styles/spacing.js';
3
- import '@vaadin/vaadin-lumo-styles/typography.js';
4
- import { css, registerStyles } from '@vaadin/vaadin-themable-mixin/vaadin-themable-mixin.js';
5
-
6
- registerStyles(
7
- 'vaadin-app-layout',
8
- css`
9
- [part='navbar'],
10
- [part='drawer'] {
11
- background-color: var(--lumo-base-color);
12
- background-clip: padding-box;
13
- }
14
-
15
- [part='navbar'] {
16
- min-height: var(--lumo-size-xl);
17
- border-bottom: 1px solid var(--lumo-contrast-10pct);
18
- }
19
-
20
- [part='navbar'][bottom] {
21
- border-bottom: none;
22
- border-top: 1px solid var(--lumo-contrast-10pct);
23
- }
24
-
25
- [part='drawer'] {
26
- border-inline-end: 1px solid var(--lumo-contrast-10pct);
27
- }
28
-
29
- :host([overlay]) [part='drawer'] {
30
- border-inline-end: none;
31
- box-shadow: var(--lumo-box-shadow-s);
32
- }
33
-
34
- :host([primary-section='navbar']) [part='navbar'] {
35
- border: none;
36
- background-image: linear-gradient(var(--lumo-contrast-5pct), var(--lumo-contrast-5pct));
37
- }
38
-
39
- :host([primary-section='drawer']:not([overlay])) [part='drawer'] {
40
- background-image: linear-gradient(var(--lumo-shade-5pct), var(--lumo-shade-5pct));
41
- }
42
-
43
- [part='backdrop'] {
44
- background-color: var(--lumo-shade-20pct);
45
- opacity: 1;
46
- }
47
-
48
- [part] ::slotted(h2),
49
- [part] ::slotted(h3),
50
- [part] ::slotted(h4) {
51
- margin-top: var(--lumo-space-xs) !important;
52
- margin-bottom: var(--lumo-space-xs) !important;
53
- }
54
- `,
55
- { moduleId: 'lumo-app-layout' },
56
- );
@@ -1,2 +0,0 @@
1
- import './vaadin-app-layout-styles.js';
2
- import '../../src/vaadin-app-layout.js';
@@ -1,2 +0,0 @@
1
- import './vaadin-app-layout-styles.js';
2
- import '../../src/vaadin-app-layout.js';
@@ -1 +0,0 @@
1
- import '@vaadin/vaadin-lumo-styles/font-icons.js';
@@ -1,36 +0,0 @@
1
- import '@vaadin/vaadin-lumo-styles/font-icons.js';
2
- import { button } from '@vaadin/button/theme/lumo/vaadin-button-styles.js';
3
- import { css, registerStyles } from '@vaadin/vaadin-themable-mixin/vaadin-themable-mixin.js';
4
-
5
- const drawerToggle = css`
6
- :host {
7
- width: var(--lumo-size-l);
8
- height: var(--lumo-size-l);
9
- min-width: auto;
10
- margin: 0 var(--lumo-space-s);
11
- padding: 0;
12
- background: transparent;
13
- }
14
-
15
- [part='icon'],
16
- [part='icon']::after,
17
- [part='icon']::before {
18
- position: inherit;
19
- height: auto;
20
- width: auto;
21
- background: transparent;
22
- top: auto;
23
- }
24
-
25
- [part='icon']::before {
26
- font-family: lumo-icons;
27
- font-size: var(--lumo-icon-size-m);
28
- content: var(--lumo-icons-menu);
29
- }
30
-
31
- :host([slot~='navbar']) {
32
- color: var(--lumo-secondary-text-color);
33
- }
34
- `;
35
-
36
- registerStyles('vaadin-drawer-toggle', [button, drawerToggle], { moduleId: 'lumo-drawer-toggle' });
@@ -1,2 +0,0 @@
1
- import './vaadin-drawer-toggle-styles.js';
2
- import '../../src/vaadin-drawer-toggle.js';
@@ -1,2 +0,0 @@
1
- import './vaadin-drawer-toggle-styles.js';
2
- import '../../src/vaadin-drawer-toggle.js';