Add colors to Text

Signed-off-by: Charles de Dreuille <charles.dedreuille@gmail.com>
This commit is contained in:
Charles de Dreuille
2025-03-13 10:45:04 +00:00
parent afe82bf57c
commit cb7e99d914
5 changed files with 53 additions and 0 deletions
+5
View File
@@ -0,0 +1,5 @@
---
'@backstage/canon': minor
---
Updating styles for Text and Link components as well as global surface tokens.
+13
View File
@@ -957,6 +957,19 @@ export interface TextProps {
// (undocumented)
className?: string;
// (undocumented)
color?:
| 'primary'
| 'secondary'
| 'danger'
| 'warning'
| 'success'
| Partial<
Record<
Breakpoint,
'primary' | 'secondary' | 'danger' | 'warning' | 'success'
>
>;
// (undocumented)
style?: CSSProperties;
// (undocumented)
variant?:
@@ -27,6 +27,7 @@ export const Text = forwardRef<HTMLParagraphElement, TextProps>(
children,
variant = 'body',
weight = 'regular',
color = 'primary',
style,
className,
...restProps
@@ -35,6 +36,7 @@ export const Text = forwardRef<HTMLParagraphElement, TextProps>(
// Get the responsive values for the variant and weight
const responsiveVariant = useResponsiveValue(variant);
const responsiveWeight = useResponsiveValue(weight);
const responsiveColor = useResponsiveValue(color);
return (
<p
@@ -43,6 +45,7 @@ export const Text = forwardRef<HTMLParagraphElement, TextProps>(
'canon-Text',
responsiveVariant && `canon-Text--variant-${responsiveVariant}`,
responsiveWeight && `canon-Text--weight-${responsiveWeight}`,
responsiveColor && `canon-Text--color-${responsiveColor}`,
className,
)}
style={style}
@@ -48,3 +48,23 @@
.canon-Text--weight-bold {
font-weight: var(--canon-font-weight-bold);
}
.canon-Text--color-primary {
color: var(--canon-fg-primary);
}
.canon-Text--color-secondary {
color: var(--canon-fg-secondary);
}
.canon-Text--color-danger {
color: var(--canon-fg-danger);
}
.canon-Text--color-warning {
color: var(--canon-fg-warning);
}
.canon-Text--color-success {
color: var(--canon-fg-success);
}
@@ -27,6 +27,18 @@ export interface TextProps {
| 'label'
| Partial<Record<Breakpoint, 'subtitle' | 'body' | 'caption' | 'label'>>;
weight?: 'regular' | 'bold' | Partial<Record<Breakpoint, 'regular' | 'bold'>>;
color?:
| 'primary'
| 'secondary'
| 'danger'
| 'warning'
| 'success'
| Partial<
Record<
Breakpoint,
'primary' | 'secondary' | 'danger' | 'warning' | 'success'
>
>;
className?: string;
style?: CSSProperties;
}