Skip to content

Commit d82b334

Browse files
authored
Merge branch 'master' into apetrov/add-file-input-css-vars
2 parents e787b74 + 8ca7899 commit d82b334

File tree

82 files changed

+706
-490
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

82 files changed

+706
-490
lines changed

CHANGELOG.md

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,13 @@ All notable changes to this project will be documented in this file.
44
The format is based on [Keep a Changelog](http://keepachangelog.com/)
55
and this project adheres to [Semantic Versioning](http://semver.org/).
66

7+
## [6.1.1] - 2025-06-25
8+
### Fixed
9+
- #### Dropdown
10+
- Icon size in Bootstrap theme [#1755](https://github.com/IgniteUI/igniteui-webcomponents/pull/1755)
11+
- #### Input, File Input
12+
- Label positioning and transition logic in Material theme [#1739](https://github.com/IgniteUI/igniteui-webcomponents/pull/1739) [#1753](https://github.com/IgniteUI/igniteui-webcomponents/pull/1753)
13+
714
## [6.1.0] - 2025-06-12
815
### Added
916
- Date Range Picker
@@ -924,6 +931,7 @@ Initial release of Ignite UI Web Components
924931
- Ripple component
925932
- Switch component
926933

934+
[6.1.1]: https://github.com/IgniteUI/igniteui-webcomponents/compare/6.1.0...6.1.1
927935
[6.1.0]: https://github.com/IgniteUI/igniteui-webcomponents/compare/6.0.1...6.1.0
928936
[6.0.1]: https://github.com/IgniteUI/igniteui-webcomponents/compare/6.0.0...6.0.1
929937
[6.0.0]: https://github.com/IgniteUI/igniteui-webcomponents/compare/5.4.1...6.0.0

src/components/avatar/avatar.ts

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import { html, LitElement, nothing, type PropertyValues } from 'lit';
22
import { property, state } from 'lit/decorators.js';
33
import { ifDefined } from 'lit/directives/if-defined.js';
4-
import { themes } from '../../theming/theming-decorator.js';
4+
import { addThemingController } from '../../theming/theming-controller.js';
55
import { addInternalsController } from '../common/controllers/internals.js';
66
import { registerComponent } from '../common/definitions/register.js';
77
import type { AvatarShape } from '../types.js';
@@ -22,7 +22,6 @@ import { all } from './themes/themes.js';
2222
* @csspart image - The image wrapper of the avatar.
2323
* @csspart icon - The icon wrapper of the avatar.
2424
*/
25-
@themes(all)
2625
export default class IgcAvatarComponent extends LitElement {
2726
public static readonly tagName = 'igc-avatar';
2827
public static override styles = [styles, shared];
@@ -70,6 +69,11 @@ export default class IgcAvatarComponent extends LitElement {
7069
@property({ reflect: true })
7170
public shape: AvatarShape = 'square';
7271

72+
constructor() {
73+
super();
74+
addThemingController(this, all);
75+
}
76+
7377
protected override willUpdate(changedProperties: PropertyValues<this>): void {
7478
if (changedProperties.has('initials') || changedProperties.has('alt')) {
7579
this._internals.setARIA({

src/components/badge/badge.ts

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
import { html, LitElement, type PropertyValues } from 'lit';
22
import { property } from 'lit/decorators.js';
3-
import { themes } from '../../theming/theming-decorator.js';
3+
import { addThemingController } from '../../theming/theming-controller.js';
44
import { addInternalsController } from '../common/controllers/internals.js';
55
import { registerComponent } from '../common/definitions/register.js';
66
import type { BadgeShape, StyleVariant } from '../types.js';
@@ -18,7 +18,6 @@ import { all } from './themes/themes.js';
1818
*
1919
* @csspart base - The base wrapper of the badge.
2020
*/
21-
@themes(all)
2221
export default class IgcBadgeComponent extends LitElement {
2322
public static readonly tagName = 'igc-badge';
2423
public static override styles = [styles, shared];
@@ -53,6 +52,11 @@ export default class IgcBadgeComponent extends LitElement {
5352
@property({ reflect: true })
5453
public shape: BadgeShape = 'rounded';
5554

55+
constructor() {
56+
super();
57+
addThemingController(this, all);
58+
}
59+
5660
protected override willUpdate(changedProperties: PropertyValues<this>): void {
5761
if (changedProperties.has('variant')) {
5862
this._internals.setARIA({ ariaRoleDescription: `badge ${this.variant}` });

src/components/banner/banner.ts

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ import { createRef, type Ref, ref } from 'lit/directives/ref.js';
44

55
import { addAnimationController } from '../../animations/player.js';
66
import { growVerIn, growVerOut } from '../../animations/presets/grow/index.js';
7-
import { themes } from '../../theming/theming-decorator.js';
7+
import { addThemingController } from '../../theming/theming-controller.js';
88
import IgcButtonComponent from '../button/button.js';
99
import { addInternalsController } from '../common/controllers/internals.js';
1010
import { registerComponent } from '../common/definitions/register.js';
@@ -38,7 +38,6 @@ export interface IgcBannerComponentEventMap {
3838
* @csspart actions - The part that holds the banner action buttons.
3939
*/
4040

41-
@themes(all)
4241
export default class IgcBannerComponent extends EventEmitterMixin<
4342
IgcBannerComponentEventMap,
4443
Constructor<LitElement>
@@ -67,6 +66,8 @@ export default class IgcBannerComponent extends EventEmitterMixin<
6766
constructor() {
6867
super();
6968

69+
addThemingController(this, all);
70+
7071
addInternalsController(this, {
7172
initialARIA: {
7273
role: 'status',

src/components/button-group/button-group.ts

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import { html, LitElement } from 'lit';
22
import { property, queryAssignedElements } from 'lit/decorators.js';
33

4-
import { themes } from '../../theming/theming-decorator.js';
4+
import { addThemingController } from '../../theming/theming-controller.js';
55
import {
66
createMutationController,
77
type MutationControllerParams,
@@ -35,7 +35,6 @@ export interface IgcButtonGroupComponentEventMap {
3535
*
3636
* @csspart group - The button group container.
3737
*/
38-
@themes(all)
3938
export default class IgcButtonGroupComponent extends EventEmitterMixin<
4039
IgcButtonGroupComponentEventMap,
4140
Constructor<LitElement>
@@ -134,6 +133,8 @@ export default class IgcButtonGroupComponent extends EventEmitterMixin<
134133
constructor() {
135134
super();
136135

136+
addThemingController(this, all);
137+
137138
createMutationController(this, {
138139
callback: this._observerCallback,
139140
filter: [IgcToggleButtonComponent.tagName],

src/components/button-group/toggle-button.ts

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,9 @@
11
import { html, LitElement } from 'lit';
22
import { property, query } from 'lit/decorators.js';
33

4-
import { themes } from '../../theming/theming-decorator.js';
4+
import { addThemingController } from '../../theming/theming-controller.js';
55
import { addKeyboardFocusRing } from '../common/controllers/focus-ring.js';
6+
import { shadowOptions } from '../common/decorators/shadow-options.js';
67
import { registerComponent } from '../common/definitions/register.js';
78
import { partMap } from '../common/part-map.js';
89
import { styles } from './themes/button.base.css.js';
@@ -19,16 +20,11 @@ import { styles as shared } from './themes/shared/button/button.common.css.js';
1920
*
2021
* @csspart toggle - The native button element.
2122
*/
22-
@themes(all)
23+
@shadowOptions({ delegatesFocus: true })
2324
export default class IgcToggleButtonComponent extends LitElement {
2425
public static override styles = [styles, shared];
2526
public static readonly tagName = 'igc-toggle-button';
2627

27-
public static override shadowRootOptions = {
28-
...LitElement.shadowRootOptions,
29-
delegatesFocus: true,
30-
};
31-
3228
/* blazorSuppress */
3329
public static register(): void {
3430
registerComponent(IgcToggleButtonComponent);
@@ -60,6 +56,11 @@ export default class IgcToggleButtonComponent extends LitElement {
6056
@property({ type: Boolean, reflect: true })
6157
public disabled = false;
6258

59+
constructor() {
60+
super();
61+
addThemingController(this, all);
62+
}
63+
6364
/* alternateName: focusComponent */
6465
/** Sets focus on the button. */
6566
public override focus(options?: FocusOptions): void {

src/components/button/button-base.ts

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ import { ifDefined } from 'lit/directives/if-defined.js';
44
import { addKeyboardFocusRing } from '../common/controllers/focus-ring.js';
55
import { addInternalsController } from '../common/controllers/internals.js';
66
import { blazorDeepImport } from '../common/decorators/blazorDeepImport.js';
7+
import { shadowOptions } from '../common/decorators/shadow-options.js';
78
import type { Constructor } from '../common/mixins/constructor.js';
89
import { EventEmitterMixin } from '../common//mixins/event-emitter.js';
910
import { partMap } from '../common/part-map.js';
@@ -17,17 +18,13 @@ export interface IgcButtonEventMap {
1718
}
1819

1920
@blazorDeepImport
21+
@shadowOptions({ delegatesFocus: true })
2022
export abstract class IgcButtonBaseComponent extends EventEmitterMixin<
2123
IgcButtonEventMap,
2224
Constructor<LitElement>
2325
>(LitElement) {
2426
public static readonly formAssociated = true;
2527

26-
protected static shadowRootOptions = {
27-
...LitElement.shadowRootOptions,
28-
delegatesFocus: true,
29-
};
30-
3128
protected readonly _internals = addInternalsController(this);
3229
private readonly _focusRingManager = addKeyboardFocusRing(this);
3330

src/components/button/button.ts

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import { html } from 'lit';
22
import { property } from 'lit/decorators.js';
33

4-
import { themes } from '../../theming/theming-decorator.js';
4+
import { addThemingController } from '../../theming/theming-controller.js';
55
import { registerComponent } from '../common/definitions/register.js';
66
import type { ButtonVariant } from '../types.js';
77
import { IgcButtonBaseComponent } from './button-base.js';
@@ -23,7 +23,6 @@ import { all } from './themes/button/themes.js';
2323
* @csspart prefix - The prefix container of the igc-button component.
2424
* @csspart suffix - The suffix container of the igc-button component.
2525
*/
26-
@themes(all)
2726
export default class IgcButtonComponent extends IgcButtonBaseComponent {
2827
public static readonly tagName = 'igc-button';
2928
protected static styles = [styles, shared];
@@ -40,6 +39,11 @@ export default class IgcButtonComponent extends IgcButtonBaseComponent {
4039
@property({ reflect: true })
4140
public variant: ButtonVariant = 'contained';
4241

42+
constructor() {
43+
super();
44+
addThemingController(this, all);
45+
}
46+
4347
protected renderContent() {
4448
return html`
4549
<slot name="prefix"></slot>

src/components/button/icon-button.ts

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ import { html } from 'lit';
22
import { property } from 'lit/decorators.js';
33
import { ifDefined } from 'lit/directives/if-defined.js';
44

5-
import { themes } from '../../theming/theming-decorator.js';
5+
import { addThemingController } from '../../theming/theming-controller.js';
66
import { blazorInclude } from '../common/decorators/blazorInclude.js';
77
import { registerComponent } from '../common/definitions/register.js';
88
import IgcIconComponent from '../icon/icon.js';
@@ -22,7 +22,6 @@ import { all } from './themes/icon-button/themes.js';
2222
* @csspart base - The wrapping element of the icon button.
2323
* @csspart icon - The icon element of the icon button.
2424
*/
25-
@themes(all)
2625
export default class IgcIconButtonComponent extends IgcButtonBaseComponent {
2726
public static readonly tagName = 'igc-icon-button';
2827
protected static styles = [styles, shared];
@@ -61,6 +60,11 @@ export default class IgcIconButtonComponent extends IgcButtonBaseComponent {
6160
@property({ reflect: true })
6261
public variant: IconButtonVariant = 'contained';
6362

63+
constructor() {
64+
super();
65+
addThemingController(this, all);
66+
}
67+
6468
protected renderContent() {
6569
return html`
6670
${this.name || this.mirrored

src/components/calendar/calendar.ts

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ import { choose } from 'lit/directives/choose.js';
44
import { createRef, type Ref, ref } from 'lit/directives/ref.js';
55
import { styleMap } from 'lit/directives/style-map.js';
66

7-
import { themes } from '../../theming/theming-decorator.js';
7+
import { addThemingController } from '../../theming/theming-controller.js';
88
import {
99
addKeybindings,
1010
arrowDown,
@@ -107,7 +107,6 @@ export const focusActiveDate = Symbol();
107107
* @csspart selected - Indicates selected state. Applies to date, month and year elements of the calendar.
108108
* @csspart current - Indicates current state. Applies to date, month and year elements of the calendar.
109109
*/
110-
@themes(all)
111110
export default class IgcCalendarComponent extends EventEmitterMixin<
112111
IgcCalendarComponentEventMap,
113112
Constructor<IgcCalendarBaseComponent>
@@ -413,6 +412,8 @@ export default class IgcCalendarComponent extends EventEmitterMixin<
413412
constructor() {
414413
super();
415414

415+
addThemingController(this, all);
416+
416417
addKeybindings(this, {
417418
skip: this.isNotFromCalendarView,
418419
ref: this.contentRef,

0 commit comments

Comments
 (0)