diff --git a/CHANGELOG.md b/CHANGELOG.md index d82c4ead8..b9da031c5 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,9 +5,29 @@ The format is based on [Keep a Changelog](http://keepachangelog.com/) and this project adheres to [Semantic Versioning](http://semver.org/). ## [Unreleased] -### Breaking Changes -- #### Themes - - Changed global prefixes for CSS custom properties for component themes to be better aligned with other Ignite UI component frameworks. +### Added +- #### Chat + - **adoptRootStyles** can now be toggled on/off at runtime. [#2093](https://github.com/IgniteUI/igniteui-webcomponents/pull/2093) + +### Changed +- #### Library + - Minimum Node version required is now >= 22. +- #### Themes - **Breaking change** + - Changed global prefixes for CSS custom properties for component themes to align with other Ignite UI component libraries. + +### Fixed +- #### Carousel + - Context instantiation in Blazor. [#2033](https://github.com/IgniteUI/igniteui-webcomponents/pull/2033) +- #### Combo + - Correct cursor style over non input parts. [#2085](https://github.com/IgniteUI/igniteui-webcomponents/pull/2085) +- #### Textarea + - Correct cursor style over non input parts. [#2085](https://github.com/IgniteUI/igniteui-webcomponents/pull/2085) + +### Removed +- #### Chat + - Removed the **typingIndicator** template renderer. Users can use the **typing-indicator** slot instead. +- #### Tooltip + - Removed the **disableArrow** deprecated property. ## [6.5.1] - 2026-02-04 ### Fixed diff --git a/scripts/_package.json b/scripts/_package.json index a0619bef4..de835422a 100644 --- a/scripts/_package.json +++ b/scripts/_package.json @@ -26,7 +26,7 @@ "url": "https://github.com/IgniteUI/igniteui-webcomponents/issues" }, "engines": { - "node": ">=20" + "node": ">=22" }, "keywords": [ "webcomponents", diff --git a/src/components/chat/chat.spec.ts b/src/components/chat/chat.spec.ts index d113fb675..a8416bba8 100644 --- a/src/components/chat/chat.spec.ts +++ b/src/components/chat/chat.spec.ts @@ -567,16 +567,21 @@ describe('Chat', () => { }); it('should render custom typingIndicator', async () => { + const indicator = document.createElement('span'); + indicator.slot = 'typing-indicator'; + indicator.innerText = 'loading...'; + chat.appendChild(indicator); + chat.messages = [messages[0]]; - chat.options = { - isTyping: true, - renderers: { - typingIndicator: () => html`loading...`, - }, - }; + chat.options = { isTyping: true }; await elementUpdated(chat); - expect(getChatDOM(chat).typingIndicator.innerText).to.equal('loading...'); + const typingIndicator = getChatDOM(chat).typingIndicator; + const assignedElements = typingIndicator + ?.querySelector('slot') + ?.assignedElements(); + + expect(first(assignedElements!).textContent).to.equal('loading...'); }); it('should render text area templates', async () => { diff --git a/src/components/chat/chat.ts b/src/components/chat/chat.ts index 8e5063de9..9d4ba064f 100644 --- a/src/components/chat/chat.ts +++ b/src/components/chat/chat.ts @@ -32,7 +32,6 @@ import type { } from './types.js'; type DefaultChatRenderers = { - typingIndicator: ChatTemplateRenderer; suggestionPrefix: ChatTemplateRenderer; }; @@ -212,7 +211,6 @@ export default class IgcChatComponent extends EventEmitterMixin< ); private readonly _defaults = Object.freeze({ - typingIndicator: () => this._renderLoadingTemplate(), suggestionPrefix: () => this._renderSuggestionPrefix(), }); @@ -380,8 +378,6 @@ export default class IgcChatComponent extends EventEmitterMixin< } private _renderMessages() { - const ctx = { instance: this }; - return html`
${repeat( @@ -416,7 +412,7 @@ export default class IgcChatComponent extends EventEmitterMixin< ? html`
${this._getRenderer('typingIndicator')(ctx)}${this._renderLoadingTemplate()}
` diff --git a/src/components/chat/types.ts b/src/components/chat/types.ts index 5cfd6ebe7..73b083d4e 100644 --- a/src/components/chat/types.ts +++ b/src/components/chat/types.ts @@ -230,12 +230,6 @@ export interface ChatRenderers { * Custom renderer for the header of a message, including sender and timestamp. */ messageHeader?: ChatTemplateRenderer; - /** - * Custom renderer for the "is typing" indicator. - * - * @deprecated since 6.4.0. Use the `typing-indicator` slot. - */ - typingIndicator?: ChatTemplateRenderer; /** * Custom renderer for the message send button. */ diff --git a/src/components/tooltip/tooltip.spec.ts b/src/components/tooltip/tooltip.spec.ts index e9d086c7d..5df03e9fd 100644 --- a/src/components/tooltip/tooltip.spec.ts +++ b/src/components/tooltip/tooltip.spec.ts @@ -75,7 +75,6 @@ describe('Tooltip', () => { it('is correctly initialized with its default component state', () => { expect(tooltip.dir).to.be.empty; expect(tooltip.open).to.be.false; - expect(tooltip.disableArrow).to.be.true; expect(tooltip.withArrow).to.be.false; expect(tooltip.offset).to.equal(6); expect(tooltip.placement).to.equal('bottom'); diff --git a/src/components/tooltip/tooltip.ts b/src/components/tooltip/tooltip.ts index 8fd732ccf..d3cb480ac 100644 --- a/src/components/tooltip/tooltip.ts +++ b/src/components/tooltip/tooltip.ts @@ -85,7 +85,9 @@ export default class IgcTooltipComponent extends EventEmitterMixin< private readonly _containerRef = createRef(); private readonly _player = addAnimationController(this, this._containerRef); - private readonly _slots = addSlotController(this, { slots: setSlots() }); + private readonly _slots = addSlotController(this, { + slots: setSlots('close-button'), + }); private readonly _showAnimation = scaleInCenter({ duration: 150, @@ -146,25 +148,6 @@ export default class IgcTooltipComponent extends EventEmitterMixin< return this._controller.open; } - /** - * Whether to disable the rendering of the arrow indicator for the tooltip. - * - * @deprecated since 6.1.0. Use `with-arrow` to control the behavior of the tooltip arrow. - * @attr disable-arrow - * @default false - */ - @property({ type: Boolean, attribute: 'disable-arrow' }) - public set disableArrow(value: boolean) { - this.withArrow = !value; - } - - /** - * @deprecated since 6.1.0. Use `with-arrow` to control the behavior of the tooltip arrow. - */ - public get disableArrow(): boolean { - return !this.withArrow; - } - /** * Whether to render an arrow indicator for the tooltip. *