Commit f5536d3
committed
fix(engine): gate theme-derived colors on isOpaqueColor, not the literal 'transparent'
Three sites decided "is this background really a color?" by comparing
against the string 'transparent', which misses 'none' and alpha-zero
rgba() -- the exact truthy-but-invisible values the export-canvas fix
(529ebb8) already hardened against. All three now share core's existing
isOpaqueColor():
- charts/scatter/compute.ts: the default point stroke fell through to
the raw background string, so a theme background of 'none' became
stroke='none'. SVG drops the separator halo; canvas is worse, since an
invalid strokeStyle assignment is silently ignored and the previous
color keeps painting.
- theme/resolve.ts isDarkBackground(): a non-opaque background parsed to
luminance 0 and was treated as dark, inverting chrome text on an
effectively transparent (likely light) host. The existing comment
already stated the intent -- no intrinsic luminance -- for the
'transparent' literal; now it holds for every non-opaque value.
- theme/dark-mode.ts adaptTheme(): same equality check, same widening.
No behavior change here (unparseable inputs already fell into the
alreadyDark branch via luminance 0); this is convergence on one
definition of transparency.
Also documents the rc.19 stroke-default change in migrating-v8.md
(section 20). It shipped in 644e0f8, whose non-conventional message
("bug: fix") kept it out of every generated changelog.1 parent 1dfaaae commit f5536d3
5 files changed
Lines changed: 63 additions & 10 deletions
File tree
- docs
- packages
- core/src/theme
- engine/src/charts/scatter
- __tests__
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
907 | 907 | | |
908 | 908 | | |
909 | 909 | | |
| 910 | + | |
| 911 | + | |
| 912 | + | |
| 913 | + | |
| 914 | + | |
| 915 | + | |
| 916 | + | |
| 917 | + | |
| 918 | + | |
| 919 | + | |
| 920 | + | |
| 921 | + | |
| 922 | + | |
| 923 | + | |
| 924 | + | |
| 925 | + | |
| 926 | + | |
| 927 | + | |
| 928 | + | |
| 929 | + | |
| 930 | + | |
| 931 | + | |
| 932 | + | |
| 933 | + | |
| 934 | + | |
| 935 | + | |
910 | 936 | | |
911 | 937 | | |
912 | 938 | | |
| |||
928 | 954 | | |
929 | 955 | | |
930 | 956 | | |
| 957 | + | |
| 958 | + | |
| 959 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
6 | 6 | | |
7 | 7 | | |
8 | 8 | | |
9 | | - | |
| 9 | + | |
10 | 10 | | |
11 | 11 | | |
12 | 12 | | |
| |||
108 | 108 | | |
109 | 109 | | |
110 | 110 | | |
111 | | - | |
112 | | - | |
113 | | - | |
| 111 | + | |
| 112 | + | |
| 113 | + | |
| 114 | + | |
114 | 115 | | |
115 | 116 | | |
116 | 117 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
10 | 10 | | |
11 | 11 | | |
12 | 12 | | |
| 13 | + | |
13 | 14 | | |
14 | 15 | | |
15 | 16 | | |
| |||
192 | 193 | | |
193 | 194 | | |
194 | 195 | | |
195 | | - | |
196 | | - | |
197 | | - | |
| 196 | + | |
| 197 | + | |
| 198 | + | |
| 199 | + | |
198 | 200 | | |
199 | 201 | | |
200 | 202 | | |
| |||
Lines changed: 17 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
501 | 501 | | |
502 | 502 | | |
503 | 503 | | |
| 504 | + | |
| 505 | + | |
| 506 | + | |
| 507 | + | |
| 508 | + | |
| 509 | + | |
| 510 | + | |
| 511 | + | |
| 512 | + | |
| 513 | + | |
| 514 | + | |
| 515 | + | |
| 516 | + | |
| 517 | + | |
| 518 | + | |
| 519 | + | |
| 520 | + | |
504 | 521 | | |
505 | 522 | | |
506 | 523 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
17 | 17 | | |
18 | 18 | | |
19 | 19 | | |
| 20 | + | |
20 | 21 | | |
21 | 22 | | |
22 | 23 | | |
| |||
133 | 134 | | |
134 | 135 | | |
135 | 136 | | |
136 | | - | |
137 | | - | |
| 137 | + | |
| 138 | + | |
| 139 | + | |
| 140 | + | |
| 141 | + | |
138 | 142 | | |
139 | | - | |
| 143 | + | |
140 | 144 | | |
141 | 145 | | |
142 | 146 | | |
| |||
0 commit comments