Skip to content

Releases: genexuslabs/chameleon-controls-library

v6.25.0

15 Oct 16:31

Choose a tag to compare

Chameleon 6.25.0 (2025-10-15)

Category Change
Accessibility Feature Fix Performance [ch-popover] Fix issues related with the positioning of the popover by @ncamera in #562

Improvements in the ch-popover component

  • Use the viewport size, instead of the whole document size to properly position the popover.
    When the document has scrollbars, the ch-popover was not positioned correctly because the entire document size was used instead of the viewport size.

  • Properly calculate the ch-popover's max size.
    We were always using the max size of the CSS custom vars if they were defined.

  • Add support to re-position the ch-popover when the browser's window is resized.

  • Add support to close the popover if it is no longer visible.

  • Add support to know the reason of the popoverClosed event.
    The reason property of the event provides more information about the cause of the closing:

    • "click-outside": The popover is being closed because the user clicked outside the popover when using closeOnClickOutside === true and mode === "manual".

    • "escape-key": The popover is being closed because the user pressed the "Escape" key when using closeOnClickOutside === true and mode === "manual".

    • "popover-no-longer-visible": The popover is being closed because it is no longer visible.

    • "toggle": The popover is being closed by the native toggle behavior of popover. It can be produced by the user clicking the actionElement, pressing the "Enter" or "Space" keys on the actionElement, pressing the "Escape" key or other. Used when mode === "auto".

  • Avoid emitting duplicated popoverClosed event.
    This fixes emitting the duplicated event in the following scenarios:

    • The "Escape" key is pressed in mode === "manual".

    • The user clicks outside the popover in mode === "manual".

    • The show property is changed to false externally.

    • The user scrolls the window and the popover is no longer visible.

Full Changelog: v6.24.0...v6.25.0

v6.24.0

15 Oct 16:21

Choose a tag to compare

Chameleon 6.24.0 (2025-10-15)

Category Change
Feature [ch-tabular-grid] Add showLines property (placeholder, no effect yet) by @bsastregx in #559
Fix Performance Mark more external dependencies for "lit" and "open-wc" by @ncamera in #560
Accessibility Feature [ch-sidebar] Add support for specifying the position of the expand button with the expandButtonPosition property by @ncamera in #561

Full Changelog: v6.23.0...v6.24.0

v6.23.0

13 Oct 14:04

Choose a tag to compare

Chameleon 6.23.0 (2025-10-13)

Category Change
Documentation [ch-action-list-render] Rename references to "tree" component on the readme.md, and remove unused waitDropProcessing state variable by @bsastregx in #556
Breaking Change Fix Performance Mark "lit" dependency as external to optimize bundle size and avoid issues when mixing Lit dependencies by @ncamera in #551

Breaking changes

From now on, a build tool (like Vite, Rollup, Rolldown, ESBuild, Webpack, Turbopack, etc.) with a package manager (like npm, yarn, pnpm, bun, etc.) must be used to run Chameleon.

Full Changelog: v6.22.1...v6.23.0

v6.22.1

17 Sep 19:59

Choose a tag to compare

Chameleon 6.22.1 (2025-09-17)

Category Change
Fix [ch-chat] Remove white-spaces in the ch-chat's messages by @ncamera in #555

Full Changelog: v6.22.0...v6.22.1

v6.22.0

11 Sep 19:41

Choose a tag to compare

Chameleon 6.22.0 (2025-09-11)

Category Change
Fix [ch-markdown-viewer] Fixed ch-markdown-viewer crash when rendering values like "\n\n" or "\r\n" by @ncamera in #552
Fix [ch-popover] Fixed positionTry not working when using inlineSizeMatch/blockSizeMatch with "action-element-as-minimum" by @ncamera in #554
Accessibility Feature Fix [ch-combo-box-render] Added support to customize the max size of the popover and fixed ch-popover not enforcing maximum sizes by @ncamera in #553

Full Changelog: v6.21.0...v6.22.0

v6.21.0

11 Sep 13:49

Choose a tag to compare

Chameleon 6.21.0 (2025-09-11)

Category Change
Feature [ch-tab-render] Add support to apply ellipsis when the caption of the tab overflows the max-inline-size of the container by @ncamera in #549
Accessibility Fix [ch-combo-box-render] Expand the combo-box with the ArrowUp/ArrowDown keys when the popover is closed by @ncamera in #550

Full Changelog: v6.20.1...v6.21.0

v6.20.1

11 Aug 14:01

Choose a tag to compare

Chameleon 6.20.1 (2025-08-11)

Category Change
Accessibility Fix [ch-combo-box-render] Don't update the combo-box's displayed value when changing the active descendant by @ncamera in #545
Accessibility Fix [ch-combo-box-render] Don't update the current value when closing with click outside or Escape key by @ncamera in #546
Accessibility Fix [ch-combo-box-render] Fix for focus not returning to the ch-combo-box-render when closing it with the Escape, Enter, or Tab keys by @ncamera in #547
Accessibility Fix [ch-combo-box-render] Add support to open and select/close the ch-combo-box-render with the NumpadEnter key by @ncamera in #548

Full Changelog: v6.20.0...v6.20.1

v6.20.0

08 Aug 15:56

Choose a tag to compare

Chameleon 6.20.0 (2025-08-08)

Category Change
Accessibility Fix [ch-dialog][ch-popover] Fix Safari bugs where components using the ch-dialog or ch-popover would not display correctly by @ncamera in #542
Fix [ch-chat] Fixed the send-input style when displaying custom content by @ncamera in #543
Feature [ch-chat] Add support to render the contentBefore and contentAfter sections in the messages by @ncamera in #544

Full Changelog: v6.19.0...v6.20.0

v6.19.0

07 Aug 18:14

Choose a tag to compare

Chameleon 6.19.0 (2025-08-07)

Category Change
Breaking Change Fix [ch-chat] Rename "stop-generating-anwser" button to "stop-response" and rename the generatingResponse property to waitingResponse by @ncamera in #540
Accessibility Breaking Change Feature [ch-chat] Add more options to customize the content of the send-container element and add support to replace the send button with the stop-response button by @ncamera in #541

Important changes in the ch-chat component

  • The stopGeneratingAnwser button is now called stopResponse button.

  • The send button is now replaced with the stop-response button by default.

  • Added the sendContainerLayout property to support changing the position of the send and stop-response buttons of the ch-chat's send-container part. There are four positions for distributing elements in the send-container:

    • sendContainerBefore: Before the contents of the send-container part.
    • sendInputBefore: Before the contents of the send-input part.
    • sendInputAfter: After the contents of the send-input part.
    • sendContainerAfter: After the contents of the send-container part.

    At each position you can specify reserved elements, such as the send-button and stop-response-button, but can also be specified non-reserved elements, which will be projected as content slots.

    If the reserved stop-response-button element is not specified anywhere, the send button will be replaced with the stop-response button when waitingResponse = true and the stopResponse callback is specified.

    If the send-button is not specified in any position, it won't be rendered in the ch-chat.

    For example, if you define:

    const sendContainerLayout: ChatSendContainerLayout = {
      sendInputBefore: ["attach-files-button"],
      sendInputAfter: ["send-button"]
    }

    You will have to put slot="attach-files-button" as follows (but not the send-button as this is a reserved element that is rendered internally by the ch-chat):

    <ch-chat
      sendContainerLayout={sendContainerLayout}
    >
      <button slot="attach-files-button" type="button">
        ...
      </button>
    </ch-chat>

    The following diagram shows a visual example of the ch-chat's layout with this new property:

    image
  • Added the following parts:

    • send-container-before: The container for the elements of the sendContainerLayout.sendContainerBefore position.

    • send-input-before: The container for the elements of the sendContainerLayout.sendInputBefore position.

    • send-input-after: The container for the elements of the sendContainerLayout.sendInputAfter position.

    • send-container-after: The container for the elements of the sendContainerLayout.sendContainerAfter position.

Breaking changes

  • [ch-chat] The stopGeneratingAnswer callback has been renamed to stopResponse.

  • [ch-chat] The accessibleName.stopGeneratingAnswerButton translation has been renamed to accessibleName.stopResponseButton.

  • [ch-chat] The text.stopGeneratingAnswerButton translation has been renamed to text.stopResponseButton.

  • [ch-chat] The "stop-generating-answer-button" part has been renamed to "stop-response-button".

  • [ch-chat] The generatingResponse property has been renamed to waitingResponse.

  • [ch-chat] Removed the send-input-wrapper part.

  • [ch-chat] Now, by default the send button is replaced with the stop-response button, if waitingReponse === true and the stopResponse callback is defined. If we want to keep separated those two buttons under the previous conditions, the position for the stop-response-button must be specified in the sendContainerLayout property.

  • [ch-chat] Removed the default translation text.stopResponseButton, becase now by default the send button is replaced with the stop-response button, if waitingReponse === true and the stopResponse callback is defined.

  • [ch-chat] Removed the showSendInputAdditionalContentBefore and showSendInputAdditionalContentAfter properties. To add custom content in the send-input part, the sendInputBefore and/or sendInputAfter members of the sendContainerLayout property must be specified. This new way to customize the send-input content allow us to have a better control of the DOM order (which is important for the accessibility).

Full Changelog: v6.18.1...v6.19.0

v6.18.1

01 Aug 19:23

Choose a tag to compare

Chameleon 6.18.1 (2025-08-01)

Category Change
Accessibility Fix [ch-edit] Fix multiline scroll not working with the showAdditionalContent* properties by @ncamera in #539

Full Changelog: v6.18.0...v6.18.1