@vaadin/side-nav 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/side-nav",
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,16 +34,16 @@
37
34
  ],
38
35
  "dependencies": {
39
36
  "@open-wc/dedupe-mixin": "^1.3.0",
40
- "@vaadin/a11y-base": "25.0.0-alpha10",
41
- "@vaadin/component-base": "25.0.0-alpha10",
42
- "@vaadin/vaadin-lumo-styles": "25.0.0-alpha10",
43
- "@vaadin/vaadin-themable-mixin": "25.0.0-alpha10",
37
+ "@vaadin/a11y-base": "25.0.0-alpha12",
38
+ "@vaadin/component-base": "25.0.0-alpha12",
39
+ "@vaadin/vaadin-themable-mixin": "25.0.0-alpha12",
44
40
  "lit": "^3.0.0"
45
41
  },
46
42
  "devDependencies": {
47
- "@vaadin/chai-plugins": "25.0.0-alpha10",
48
- "@vaadin/test-runner-commands": "25.0.0-alpha10",
43
+ "@vaadin/chai-plugins": "25.0.0-alpha12",
44
+ "@vaadin/test-runner-commands": "25.0.0-alpha12",
49
45
  "@vaadin/testing-helpers": "^2.0.0",
46
+ "@vaadin/vaadin-lumo-styles": "25.0.0-alpha12",
50
47
  "lit": "^3.0.0",
51
48
  "sinon": "^18.0.0"
52
49
  },
@@ -54,5 +51,5 @@
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) 2023 - 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
  import { sharedStyles } from './vaadin-side-nav-shared-base-styles.js';
9
9
 
@@ -3,7 +3,7 @@
3
3
  * Copyright (c) 2023 - 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
  import { sharedStyles } from './vaadin-side-nav-shared-base-styles.js';
9
9
 
@@ -3,7 +3,7 @@
3
3
  * Copyright (c) 2023 - 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 sharedStyles = css`
@@ -13,7 +13,7 @@ import { matchPaths } from '@vaadin/component-base/src/url-utils.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
15
  import { location } from './location.js';
16
- import { sideNavItemStyles } from './styles/vaadin-side-nav-item-core-styles.js';
16
+ import { sideNavItemStyles } from './styles/vaadin-side-nav-item-base-styles.js';
17
17
  import { SideNavChildrenMixin } from './vaadin-side-nav-children-mixin.js';
18
18
 
19
19
  /**
@@ -13,7 +13,7 @@ import { SlotStylesMixin } from '@vaadin/component-base/src/slot-styles-mixin.js
13
13
  import { generateUniqueId } from '@vaadin/component-base/src/unique-id-utils.js';
14
14
  import { LumoInjectionMixin } from '@vaadin/vaadin-themable-mixin/lumo-injection-mixin.js';
15
15
  import { ThemableMixin } from '@vaadin/vaadin-themable-mixin/vaadin-themable-mixin.js';
16
- import { sideNavSlotStyles, sideNavStyles } from './styles/vaadin-side-nav-core-styles.js';
16
+ import { sideNavSlotStyles, sideNavStyles } from './styles/vaadin-side-nav-base-styles.js';
17
17
  import { SideNavChildrenMixin } from './vaadin-side-nav-children-mixin.js';
18
18
 
19
19
  /**
@@ -1,2 +1,2 @@
1
- import './theme/lumo/vaadin-side-nav-item.js';
1
+ import './src/vaadin-side-nav-item.js';
2
2
  export * from './src/vaadin-side-nav-item.js';
@@ -1,2 +1,2 @@
1
- import './theme/lumo/vaadin-side-nav.js';
1
+ import './src/vaadin-side-nav.js';
2
2
  export * from './src/vaadin-side-nav.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/side-nav",
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/side-nav",
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,10 +0,0 @@
1
- /**
2
- * @license
3
- * Copyright (c) 2023 - 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 sideNavStyles: CSSResult;
9
-
10
- export const sideNavSlotStyles: CSSResult;
@@ -1,39 +0,0 @@
1
- /**
2
- * @license
3
- * Copyright (c) 2023 - 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 sideNavStyles = css`
9
- :host {
10
- display: block;
11
- }
12
-
13
- :host([hidden]) {
14
- display: none !important;
15
- }
16
-
17
- button {
18
- display: flex;
19
- align-items: center;
20
- justify-content: inherit;
21
- width: 100%;
22
- margin: 0;
23
- padding: 0;
24
- background-color: initial;
25
- color: inherit;
26
- border: initial;
27
- outline: none;
28
- font: inherit;
29
- text-align: inherit;
30
- }
31
-
32
- [part='children'] {
33
- padding: 0;
34
- margin: 0;
35
- list-style-type: none;
36
- }
37
- `;
38
-
39
- export const sideNavSlotStyles = css``;
@@ -1,8 +0,0 @@
1
- /**
2
- * @license
3
- * Copyright (c) 2023 - 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 sideNavItemStyles: CSSResult;
@@ -1,70 +0,0 @@
1
- /**
2
- * @license
3
- * Copyright (c) 2023 - 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 sideNavItemStyles = css`
9
- :host {
10
- display: block;
11
- }
12
-
13
- :host([hidden]),
14
- [hidden] {
15
- display: none !important;
16
- }
17
-
18
- :host([disabled]) {
19
- pointer-events: none;
20
- }
21
-
22
- [part='content'] {
23
- display: flex;
24
- align-items: center;
25
- }
26
-
27
- [part='link'] {
28
- flex: auto;
29
- min-width: 0;
30
- display: flex;
31
- align-items: center;
32
- text-decoration: none;
33
- color: inherit;
34
- font: inherit;
35
- }
36
-
37
- button {
38
- appearance: none;
39
- flex: none;
40
- position: relative;
41
- margin: 0;
42
- padding: 0;
43
- border: 0;
44
- background: transparent;
45
- }
46
-
47
- [part='children'] {
48
- padding: 0;
49
- margin: 0;
50
- list-style-type: none;
51
- }
52
-
53
- :host(:not([has-children])) button {
54
- display: none !important;
55
- }
56
-
57
- slot[name='prefix'],
58
- slot[name='suffix'] {
59
- flex: none;
60
- }
61
-
62
- slot:not([name]) {
63
- display: block;
64
- flex: auto;
65
- min-width: 0;
66
- overflow: hidden;
67
- text-overflow: ellipsis;
68
- white-space: nowrap;
69
- }
70
- `;
@@ -1,7 +0,0 @@
1
- import '@vaadin/vaadin-lumo-styles/color.js';
2
- import '@vaadin/vaadin-lumo-styles/typography.js';
3
- import '@vaadin/vaadin-lumo-styles/sizing.js';
4
- import '@vaadin/vaadin-lumo-styles/spacing.js';
5
- import '@vaadin/vaadin-lumo-styles/style.js';
6
- import '@vaadin/vaadin-lumo-styles/font-icons.js';
7
- export declare const sideNavItemStyles: import("lit").CSSResult;
@@ -1,123 +0,0 @@
1
- import '@vaadin/vaadin-lumo-styles/color.js';
2
- import '@vaadin/vaadin-lumo-styles/typography.js';
3
- import '@vaadin/vaadin-lumo-styles/sizing.js';
4
- import '@vaadin/vaadin-lumo-styles/spacing.js';
5
- import '@vaadin/vaadin-lumo-styles/style.js';
6
- import '@vaadin/vaadin-lumo-styles/font-icons.js';
7
- import { fieldButton } from '@vaadin/vaadin-lumo-styles/mixins/field-button.js';
8
- import { css, registerStyles } from '@vaadin/vaadin-themable-mixin/vaadin-themable-mixin.js';
9
-
10
- export const sideNavItemStyles = css`
11
- :host {
12
- --_focus-ring-color: var(--vaadin-focus-ring-color, var(--lumo-primary-color-50pct));
13
- --_focus-ring-width: var(--vaadin-focus-ring-width, 2px);
14
- }
15
-
16
- [part='link'] {
17
- width: 100%;
18
- gap: var(--lumo-space-xs);
19
- padding: var(--lumo-space-s);
20
- padding-inline-start: calc(var(--lumo-space-s) + var(--_child-indent, 0px));
21
- border-radius: var(--lumo-border-radius-m);
22
- transition:
23
- background-color 140ms,
24
- color 140ms;
25
- cursor: var(--lumo-clickable-cursor, default);
26
- min-height: var(--lumo-icon-size-m);
27
- }
28
-
29
- [part='link'][href] {
30
- cursor: pointer;
31
- }
32
-
33
- :host([disabled]) [part='link'] {
34
- color: var(--lumo-disabled-text-color);
35
- }
36
-
37
- [part='toggle-button'] {
38
- margin-inline-end: calc(var(--lumo-space-xs) * -1);
39
- width: var(--lumo-size-s);
40
- height: var(--lumo-size-s);
41
- }
42
-
43
- :host([has-children]) [part='content'] {
44
- padding-inline-end: var(--lumo-space-s);
45
- }
46
-
47
- @media (any-hover: hover) {
48
- [part='link']:hover {
49
- color: var(--lumo-header-text-color);
50
- }
51
-
52
- [part='toggle-button']:hover {
53
- color: var(--lumo-body-text-color);
54
- }
55
- }
56
-
57
- [part='link']:active:focus {
58
- background-color: var(--lumo-contrast-5pct);
59
- }
60
-
61
- [part='toggle-button']::before {
62
- content: var(--lumo-icons-dropdown);
63
- transform: rotate(-90deg);
64
- transition: transform 140ms;
65
- }
66
-
67
- :host([dir='rtl']) [part='toggle-button']::before {
68
- transform: rotate(90deg);
69
- }
70
-
71
- :host([expanded]) [part='toggle-button']::before {
72
- transform: none;
73
- }
74
-
75
- [part='link'],
76
- [part='toggle-button'] {
77
- outline: none;
78
- }
79
-
80
- [part='link']:focus-visible,
81
- [part='toggle-button']:focus-visible {
82
- border-radius: var(--lumo-border-radius-m);
83
- box-shadow: 0 0 0 var(--_focus-ring-width) var(--_focus-ring-color);
84
- }
85
-
86
- [part='link']:active {
87
- color: var(--lumo-header-text-color);
88
- }
89
-
90
- slot:not([name]) {
91
- margin: 0 var(--lumo-space-s);
92
- }
93
-
94
- slot[name='prefix']::slotted(:is(vaadin-icon, [class*='icon'])) {
95
- padding: 0.1em;
96
- flex-shrink: 0;
97
- color: var(--lumo-contrast-60pct);
98
- }
99
-
100
- :host([disabled]) slot[name='prefix']::slotted(:is(vaadin-icon, [class*='icon'])) {
101
- color: var(--lumo-disabled-text-color);
102
- }
103
-
104
- :host([current]) slot[name='prefix']::slotted(:is(vaadin-icon, [class*='icon'])) {
105
- color: inherit;
106
- }
107
-
108
- slot[name='children'] {
109
- --_child-indent: calc(var(--_child-indent-2, 0px) + var(--vaadin-side-nav-child-indent, var(--lumo-space-l)));
110
- }
111
-
112
- slot[name='children']::slotted(*) {
113
- --_child-indent-2: var(--_child-indent);
114
- }
115
-
116
- :host([current]) [part='content'] {
117
- background-color: var(--lumo-primary-color-10pct);
118
- color: var(--vaadin-selection-color-text, var(--lumo-primary-text-color));
119
- border-radius: var(--lumo-border-radius-m);
120
- }
121
- `;
122
-
123
- registerStyles('vaadin-side-nav-item', [fieldButton, sideNavItemStyles], { moduleId: 'lumo-side-nav-item' });
@@ -1,7 +0,0 @@
1
- /**
2
- * @license
3
- * Copyright (c) 2023 - 2025 Vaadin Ltd.
4
- * This program is available under Apache License Version 2.0, available at https://vaadin.com/license/
5
- */
6
- import './vaadin-side-nav-item-styles.js';
7
- import '../../src/vaadin-side-nav-item.js';
@@ -1,7 +0,0 @@
1
- /**
2
- * @license
3
- * Copyright (c) 2023 - 2025 Vaadin Ltd.
4
- * This program is available under Apache License Version 2.0, available at https://vaadin.com/license/
5
- */
6
- import './vaadin-side-nav-item-styles.js';
7
- import '../../src/vaadin-side-nav-item.js';
@@ -1,7 +0,0 @@
1
- import '@vaadin/vaadin-lumo-styles/color.js';
2
- import '@vaadin/vaadin-lumo-styles/typography.js';
3
- import '@vaadin/vaadin-lumo-styles/sizing.js';
4
- import '@vaadin/vaadin-lumo-styles/spacing.js';
5
- import '@vaadin/vaadin-lumo-styles/style.js';
6
- import '@vaadin/vaadin-lumo-styles/font-icons.js';
7
- export declare const sideNavStyles: import("lit").CSSResult;
@@ -1,81 +0,0 @@
1
- import '@vaadin/vaadin-lumo-styles/color.js';
2
- import '@vaadin/vaadin-lumo-styles/typography.js';
3
- import '@vaadin/vaadin-lumo-styles/sizing.js';
4
- import '@vaadin/vaadin-lumo-styles/spacing.js';
5
- import '@vaadin/vaadin-lumo-styles/style.js';
6
- import '@vaadin/vaadin-lumo-styles/font-icons.js';
7
- import { css, registerStyles } from '@vaadin/vaadin-themable-mixin/vaadin-themable-mixin.js';
8
-
9
- export const sideNavStyles = css`
10
- :host {
11
- font-family: var(--lumo-font-family);
12
- font-size: var(--lumo-font-size-m);
13
- font-weight: 500;
14
- line-height: var(--lumo-line-height-xs);
15
- color: var(--lumo-body-text-color);
16
- -webkit-tap-highlight-color: transparent;
17
- --_focus-ring-color: var(--vaadin-focus-ring-color, var(--lumo-primary-color-50pct));
18
- --_focus-ring-width: var(--vaadin-focus-ring-width, 2px);
19
- }
20
-
21
- [part='label'] {
22
- display: flex;
23
- align-items: center;
24
- width: 100%;
25
- outline: none;
26
- box-sizing: border-box;
27
- border-radius: var(--lumo-border-radius-m);
28
- font-family: var(--lumo-font-family);
29
- font-size: var(--lumo-font-size-s);
30
- font-weight: 500;
31
- line-height: var(--lumo-line-height-xs);
32
- }
33
-
34
- [part='label'] ::slotted([slot='label']) {
35
- color: var(--lumo-secondary-text-color);
36
- margin: var(--lumo-space-s);
37
- }
38
-
39
- :host([focus-ring]) [part='label'] {
40
- box-shadow: 0 0 0 var(--_focus-ring-width) var(--_focus-ring-color);
41
- }
42
-
43
- [part='toggle-button'] {
44
- display: inline-flex;
45
- align-items: center;
46
- justify-content: center;
47
- width: var(--lumo-size-s);
48
- height: var(--lumo-size-s);
49
- margin-inline: auto var(--lumo-space-xs);
50
- font-size: var(--lumo-icon-size-m);
51
- line-height: 1;
52
- color: var(--lumo-contrast-60pct);
53
- font-family: 'lumo-icons';
54
- cursor: var(--lumo-clickable-cursor);
55
- }
56
-
57
- [part='toggle-button']::before {
58
- content: var(--lumo-icons-angle-right);
59
- transition: transform 140ms;
60
- }
61
-
62
- :host(:not([collapsible])) [part='toggle-button'] {
63
- display: none !important;
64
- }
65
-
66
- :host(:not([collapsed])) [part='toggle-button']::before {
67
- transform: rotate(90deg);
68
- }
69
-
70
- :host([collapsed][dir='rtl']) [part='toggle-button']::before {
71
- transform: rotate(180deg);
72
- }
73
-
74
- @media (any-hover: hover) {
75
- [part='label']:hover [part='toggle-button'] {
76
- color: var(--lumo-body-text-color);
77
- }
78
- }
79
- `;
80
-
81
- registerStyles('vaadin-side-nav', sideNavStyles, { moduleId: 'lumo-side-nav' });
@@ -1,8 +0,0 @@
1
- /**
2
- * @license
3
- * Copyright (c) 2023 - 2025 Vaadin Ltd.
4
- * This program is available under Apache License Version 2.0, available at https://vaadin.com/license/
5
- */
6
- import './vaadin-side-nav-item.js';
7
- import './vaadin-side-nav-styles.js';
8
- import '../../src/vaadin-side-nav.js';
@@ -1,8 +0,0 @@
1
- /**
2
- * @license
3
- * Copyright (c) 2023 - 2025 Vaadin Ltd.
4
- * This program is available under Apache License Version 2.0, available at https://vaadin.com/license/
5
- */
6
- import './vaadin-side-nav-item.js';
7
- import './vaadin-side-nav-styles.js';
8
- import '../../src/vaadin-side-nav.js';