PluginProbe
Code Block Pro – Beautiful Syntax Highlighting / 1.26.7
Code Block Pro – Beautiful Syntax Highlighting v1.26.7
1.27.1 1.27.2 1.27.3 1.27.4 1.27.5 1.27.6 1.27.7 1.28.0 1.3.0 1.4.0 1.5.0 1.5.1 1.5.2 1.6.0 1.7.0 1.8.0 1.9.0 1.9.1 1.9.2 1.9.3 trunk 1.1.0 1.10.0 1.11.0 1.11.1 All 63 releases
← All changes | src/editor/components/headers/SimpleString.tsx +19 -12 1.9.31.26.7 View file →
@@ -1,19 +1,26 @@
1 1 import { colord, AnyColor } from 'colord';
2 -import { Lang } from 'shiki';
3 -import { Attributes } from '../../../types';
2 +import { Attributes, Lang } from '../../../types';
3 +import { findBackgroundColor, findTextColor } from '../../../util/colors';
4 4 import { languages } from '../../../util/languages';
5 5
6 -export const SimpleString = ({
7 - language,
8 - bgColor,
9 - textColor,
10 - headerString,
11 -}: Partial<Attributes>) => {
6 +export const SimpleString = (attributes: Attributes) => {
7 + const { language, bgColor, textColor, headerString } = attributes;
12 8 const bgC = colord(bgColor as AnyColor);
13 - const bg = bgC.isDark() ? bgC.lighten(0.05) : bgC.darken(0.05);
9 + let bg = bgC.isDark()
10 + ? bgC.lighten(0.05).toHex()
11 + : bgC.darken(0.05).toHex();
14 12 const textC = colord(textColor as AnyColor);
15 - const text = textC.isDark() ? textC.lighten(0.05) : textC.darken(0.05);
13 + let text = textC.isDark()
14 + ? textC.lighten(0.05).toHex()
15 + : textC.darken(0.05).toHex();
16 +
17 + if (bgColor?.startsWith('var(')) {
18 + bg = findBackgroundColor(attributes) ?? bgColor;
19 + }
20 + if (textColor?.startsWith('var(')) {
21 + text = findTextColor(attributes) ?? textColor;
22 + }
16 23 return (
17 24 <span
18 25 style={{
19 26 display: 'flex',
@@ -21,10 +28,10 @@
21 28 padding: '10px 0px 10px 16px',
22 29 marginBottom: '-2px',
23 30 width: '100%',
24 31 textAlign: 'left',
25 - backgroundColor: bg.toHex(),
26 - color: text.toHex(),
32 + backgroundColor: bg,
33 + color: text,
27 34 }}>
28 35 {headerString || languages[language as Lang]}
29 36 </span>
30 37 );