Skip to content

[Lens as code] Fix XY line chart breakdown dimension showing default palette instead of elastic_line_optimized#264147

Merged
andrimal merged 5 commits intoelastic:mainfrom
andrimal:fix/lens-as-code/line-dimension-editor-palette/264123
Apr 20, 2026
Merged

[Lens as code] Fix XY line chart breakdown dimension showing default palette instead of elastic_line_optimized#264147
andrimal merged 5 commits intoelastic:mainfrom
andrimal:fix/lens-as-code/line-dimension-editor-palette/264123

Conversation

@andrimal
Copy link
Copy Markdown
Contributor

@andrimal andrimal commented Apr 17, 2026

Summary

Fix #264123

This PR fixes the wrong color palette shown in the dimension editor of an XY line chart when created from API without explicit color:

Three code paths hardcoded 'default' as the palette fallback instead of checking the series type:

  • getLayerPaletteName in color_assignment.ts —> used for color assignment grouping and the visualization info palette
  • getConfiguration in visualization.tsx —> the breakdown dimension palette indicator swatches
  • DataDimensionEditor in dimension_editor.tsx —> the ColorMappingByTerms color mapping editor

All three now resolve through the existing getDefaultPalette(seriesType) helper from default_palette.ts, which is the single source of truth already used by the renderer.

Screenshots after the fix

  1. Breakdown color mapping palette
Screenshot 2026-04-17 at 6 18 57 PM
  1. Color assignment grouping for y-axis dimensions
Screenshot 2026-04-17 at 6 20 55 PM

Checklist

Check the PR satisfies following conditions.

Reviewers should verify this PR satisfies this list as well.

  • Unit or functional tests were updated or added to match the most common scenarios
  • The PR description includes the appropriate Release Notes section, and the correct release_note:* label is applied per the guidelines
  • Review the backport guidelines and apply applicable backport:* labels.

@andrimal andrimal added Team:Visualizations Team label for Lens, elastic-charts, Graph, legacy editors (TSVB, Visualize, Timelion) t// release_note:skip Skip the PR/issue when compiling release notes Feature:Lens backport:version Backport to applied version labels v9.4.0 v9.5.0 labels Apr 17, 2026
@andrimal andrimal marked this pull request as ready for review April 20, 2026 10:54
@andrimal andrimal requested a review from a team as a code owner April 20, 2026 10:54
@elasticmachine
Copy link
Copy Markdown
Contributor

Pinging @elastic/kibana-visualizations (Team:Visualizations)

@elasticmachine
Copy link
Copy Markdown
Contributor

💛 Build succeeded, but was flaky

Failed CI Steps

Metrics [docs]

Async chunks

Total size of all lazy-loaded chunks that will be downloaded as the user navigates the app

id before after diff
lens 2.0MB 2.0MB +105.0B
Unknown metric groups

References to deprecated APIs

id before after diff
lens 100 107 +7

Unreferenced deprecated APIs

id before after diff
lens 100 107 +7

History

@andrimal andrimal merged commit 0d6acba into elastic:main Apr 20, 2026
18 checks passed
@kibanamachine
Copy link
Copy Markdown
Contributor

Starting backport for target branches: 9.4

https://github.com/elastic/kibana/actions/runs/24668510339

kibanamachine pushed a commit to kibanamachine/kibana that referenced this pull request Apr 20, 2026
…` palette instead of `elastic_line_optimized` (elastic#264147)

## Summary
Fix elastic#264123

This PR fixes the wrong color palette shown in the dimension editor of
an XY line chart when created from API without explicit `color`:

Three code paths hardcoded `'default'` as the palette fallback instead
of checking the series type:
- **`getLayerPaletteName`** in `color_assignment.ts` —> used for color
assignment grouping and the visualization info palette
- **`getConfiguration`** in `visualization.tsx` —> the breakdown
dimension palette indicator swatches
- **`DataDimensionEditor`** in `dimension_editor.tsx` —> the
`ColorMappingByTerms` color mapping editor

All three now resolve through the existing
`getDefaultPalette(seriesType)` helper from `default_palette.ts`, which
is the single source of truth already used by the renderer.

## Screenshots after the fix
1. Breakdown color mapping palette

<img width="1214" height="734" alt="Screenshot 2026-04-17 at 6 18 57 PM"
src="https://github.com/user-attachments/assets/23bee1a3-2899-4bf3-97e4-0049164eea94"
/>

2. Color assignment grouping for y-axis dimensions

<img width="1287" height="734" alt="Screenshot 2026-04-17 at 6 20 55 PM"
src="https://github.com/user-attachments/assets/f8d02807-a9dc-4767-99e9-f2362c8ff0a9"
/>

### Checklist

Check the PR satisfies following conditions.

Reviewers should verify this PR satisfies this list as well.
- [x] [Unit or functional
tests](https://www.elastic.co/guide/en/kibana/master/development-tests.html)
were updated or added to match the most common scenarios
- [x] The PR description includes the appropriate Release Notes section,
and the correct `release_note:*` label is applied per the
[guidelines](https://www.elastic.co/guide/en/kibana/master/contributing.html#kibana-release-notes-process)
- [x] Review the [backport
guidelines](https://docs.google.com/document/d/1VyN5k91e5OVumlc0Gb9RPa3h1ewuPE705nRtioPiTvY/edit?usp=sharing)
and apply applicable `backport:*` labels.

(cherry picked from commit 0d6acba)
@kibanamachine
Copy link
Copy Markdown
Contributor

💚 All backports created successfully

Status Branch Result
9.4

Note: Successful backport PRs will be merged automatically after passing CI.

Questions ?

Please refer to the Backport tool documentation

kibanamachine added a commit that referenced this pull request Apr 20, 2026
…efault` palette instead of `elastic_line_optimized` (#264147) (#264406)

# Backport

This will backport the following commits from `main` to `9.4`:
- [[Lens as code] Fix XY line chart breakdown dimension showing
`default` palette instead of `elastic_line_optimized`
(#264147)](#264147)

<!--- Backport version: 9.6.6 -->

### Questions ?
Please refer to the [Backport tool
documentation](https://github.com/sorenlouv/backport)

<!--BACKPORT [{"author":{"name":"Andreana
Malama","email":"andreana.malama@elastic.co"},"sourceCommit":{"committedDate":"2026-04-20T13:13:03Z","message":"[Lens
as code] Fix XY line chart breakdown dimension showing `default` palette
instead of `elastic_line_optimized` (#264147)\n\n## Summary\nFix #264123
\n\nThis PR fixes the wrong color palette shown in the dimension editor
of\nan XY line chart when created from API without explicit
`color`:\n\nThree code paths hardcoded `'default'` as the palette
fallback instead\nof checking the series type:\n-
**`getLayerPaletteName`** in `color_assignment.ts` —> used for
color\nassignment grouping and the visualization info palette\n-
**`getConfiguration`** in `visualization.tsx` —> the
breakdown\ndimension palette indicator swatches\n-
**`DataDimensionEditor`** in `dimension_editor.tsx` —>
the\n`ColorMappingByTerms` color mapping editor\n\nAll three now resolve
through the existing\n`getDefaultPalette(seriesType)` helper from
`default_palette.ts`, which\nis the single source of truth already used
by the renderer.\n\n## Screenshots after the fix\n1. Breakdown color
mapping palette\n\n<img width=\"1214\" height=\"734\" alt=\"Screenshot
2026-04-17 at 6 18
57 PM\"\nsrc=\"https://github.com/user-attachments/assets/23bee1a3-2899-4bf3-97e4-0049164eea94\"\n/>\n\n2.
Color assignment grouping for y-axis dimensions\n\n<img width=\"1287\"
height=\"734\" alt=\"Screenshot 2026-04-17 at 6 20
55 PM\"\nsrc=\"https://github.com/user-attachments/assets/f8d02807-a9dc-4767-99e9-f2362c8ff0a9\"\n/>\n\n###
Checklist\n\nCheck the PR satisfies following conditions. \n\nReviewers
should verify this PR satisfies this list as well.\n- [x] [Unit or
functional\ntests](https://www.elastic.co/guide/en/kibana/master/development-tests.html)\nwere
updated or added to match the most common scenarios\n- [x] The PR
description includes the appropriate Release Notes section,\nand the
correct `release_note:*` label is applied per
the\n[guidelines](https://www.elastic.co/guide/en/kibana/master/contributing.html#kibana-release-notes-process)\n-
[x] Review the
[backport\nguidelines](https://docs.google.com/document/d/1VyN5k91e5OVumlc0Gb9RPa3h1ewuPE705nRtioPiTvY/edit?usp=sharing)\nand
apply applicable `backport:*`
labels.","sha":"0d6acbae691913124c71429a592c9ce27aca8218","branchLabelMapping":{"^v9.5.0$":"main","^v(\\d+).(\\d+).\\d+$":"$1.$2"}},"sourcePullRequest":{"labels":["Team:Visualizations","release_note:skip","Feature:Lens","backport:version","v9.4.0","v9.5.0"],"title":"[Lens
as code] Fix XY line chart breakdown dimension showing `default` palette
instead of
`elastic_line_optimized`","number":264147,"url":"https://github.com/elastic/kibana/pull/264147","mergeCommit":{"message":"[Lens
as code] Fix XY line chart breakdown dimension showing `default` palette
instead of `elastic_line_optimized` (#264147)\n\n## Summary\nFix #264123
\n\nThis PR fixes the wrong color palette shown in the dimension editor
of\nan XY line chart when created from API without explicit
`color`:\n\nThree code paths hardcoded `'default'` as the palette
fallback instead\nof checking the series type:\n-
**`getLayerPaletteName`** in `color_assignment.ts` —> used for
color\nassignment grouping and the visualization info palette\n-
**`getConfiguration`** in `visualization.tsx` —> the
breakdown\ndimension palette indicator swatches\n-
**`DataDimensionEditor`** in `dimension_editor.tsx` —>
the\n`ColorMappingByTerms` color mapping editor\n\nAll three now resolve
through the existing\n`getDefaultPalette(seriesType)` helper from
`default_palette.ts`, which\nis the single source of truth already used
by the renderer.\n\n## Screenshots after the fix\n1. Breakdown color
mapping palette\n\n<img width=\"1214\" height=\"734\" alt=\"Screenshot
2026-04-17 at 6 18
57 PM\"\nsrc=\"https://github.com/user-attachments/assets/23bee1a3-2899-4bf3-97e4-0049164eea94\"\n/>\n\n2.
Color assignment grouping for y-axis dimensions\n\n<img width=\"1287\"
height=\"734\" alt=\"Screenshot 2026-04-17 at 6 20
55 PM\"\nsrc=\"https://github.com/user-attachments/assets/f8d02807-a9dc-4767-99e9-f2362c8ff0a9\"\n/>\n\n###
Checklist\n\nCheck the PR satisfies following conditions. \n\nReviewers
should verify this PR satisfies this list as well.\n- [x] [Unit or
functional\ntests](https://www.elastic.co/guide/en/kibana/master/development-tests.html)\nwere
updated or added to match the most common scenarios\n- [x] The PR
description includes the appropriate Release Notes section,\nand the
correct `release_note:*` label is applied per
the\n[guidelines](https://www.elastic.co/guide/en/kibana/master/contributing.html#kibana-release-notes-process)\n-
[x] Review the
[backport\nguidelines](https://docs.google.com/document/d/1VyN5k91e5OVumlc0Gb9RPa3h1ewuPE705nRtioPiTvY/edit?usp=sharing)\nand
apply applicable `backport:*`
labels.","sha":"0d6acbae691913124c71429a592c9ce27aca8218"}},"sourceBranch":"main","suggestedTargetBranches":["9.4"],"targetPullRequestStates":[{"branch":"9.4","label":"v9.4.0","branchLabelMappingKey":"^v(\\d+).(\\d+).\\d+$","isSourceBranch":false,"state":"NOT_CREATED"},{"branch":"main","label":"v9.5.0","branchLabelMappingKey":"^v9.5.0$","isSourceBranch":true,"state":"MERGED","url":"https://github.com/elastic/kibana/pull/264147","number":264147,"mergeCommit":{"message":"[Lens
as code] Fix XY line chart breakdown dimension showing `default` palette
instead of `elastic_line_optimized` (#264147)\n\n## Summary\nFix #264123
\n\nThis PR fixes the wrong color palette shown in the dimension editor
of\nan XY line chart when created from API without explicit
`color`:\n\nThree code paths hardcoded `'default'` as the palette
fallback instead\nof checking the series type:\n-
**`getLayerPaletteName`** in `color_assignment.ts` —> used for
color\nassignment grouping and the visualization info palette\n-
**`getConfiguration`** in `visualization.tsx` —> the
breakdown\ndimension palette indicator swatches\n-
**`DataDimensionEditor`** in `dimension_editor.tsx` —>
the\n`ColorMappingByTerms` color mapping editor\n\nAll three now resolve
through the existing\n`getDefaultPalette(seriesType)` helper from
`default_palette.ts`, which\nis the single source of truth already used
by the renderer.\n\n## Screenshots after the fix\n1. Breakdown color
mapping palette\n\n<img width=\"1214\" height=\"734\" alt=\"Screenshot
2026-04-17 at 6 18
57 PM\"\nsrc=\"https://github.com/user-attachments/assets/23bee1a3-2899-4bf3-97e4-0049164eea94\"\n/>\n\n2.
Color assignment grouping for y-axis dimensions\n\n<img width=\"1287\"
height=\"734\" alt=\"Screenshot 2026-04-17 at 6 20
55 PM\"\nsrc=\"https://github.com/user-attachments/assets/f8d02807-a9dc-4767-99e9-f2362c8ff0a9\"\n/>\n\n###
Checklist\n\nCheck the PR satisfies following conditions. \n\nReviewers
should verify this PR satisfies this list as well.\n- [x] [Unit or
functional\ntests](https://www.elastic.co/guide/en/kibana/master/development-tests.html)\nwere
updated or added to match the most common scenarios\n- [x] The PR
description includes the appropriate Release Notes section,\nand the
correct `release_note:*` label is applied per
the\n[guidelines](https://www.elastic.co/guide/en/kibana/master/contributing.html#kibana-release-notes-process)\n-
[x] Review the
[backport\nguidelines](https://docs.google.com/document/d/1VyN5k91e5OVumlc0Gb9RPa3h1ewuPE705nRtioPiTvY/edit?usp=sharing)\nand
apply applicable `backport:*`
labels.","sha":"0d6acbae691913124c71429a592c9ce27aca8218"}}]}]
BACKPORT-->

Co-authored-by: Andreana Malama <andreana.malama@elastic.co>
justinkambic added a commit to justinkambic/kibana that referenced this pull request Apr 20, 2026
The lens entry bundle was 72-83B over its 86,000B page-load limit after
rebasing this branch on main. Nothing in this PR's scope
(kbn-unified-chart-section-viewer + one Discover test spec) can reach
lens's bundle — a codebase-wide grep shows zero imports of
@kbn/unified-chart-section-viewer from x-pack/platform/plugins/shared/lens,
and a local dist build's stats.json contains no matching module paths.

Cumulative drift from recent Lens-as-code commits that merged into main
(e.g., elastic#262871, elastic#264134, elastic#261581, elastic#264147, elastic#263810) pushed the entry
bundle just over the line. Raising the limit here is the documented
path when no in-PR contribution is found.

Limit set via `node scripts/build_kibana_platform_plugins --focus lens --update-limits`.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

backport:version Backport to applied version labels Feature:Lens release_note:skip Skip the PR/issue when compiling release notes Team:Visualizations Team label for Lens, elastic-charts, Graph, legacy editors (TSVB, Visualize, Timelion) t// v9.4.0 v9.5.0

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Lens as code] XY line chart dimension editor shows default palette instead of elastic_line_optimized when colorMapping is absent

4 participants