diff --git a/about/divider-showcase.page.tsx b/about/divider-showcase.page.tsx index 81ee31dfa9..ef3620db31 100644 --- a/about/divider-showcase.page.tsx +++ b/about/divider-showcase.page.tsx @@ -38,7 +38,7 @@ export default function DividerShowcase() {
Gray
-
Black
+
Base
Green
@@ -56,7 +56,7 @@ export default function DividerShowcase() {
- +
@@ -74,7 +74,7 @@ export default function DividerShowcase() {
- +
@@ -92,7 +92,7 @@ export default function DividerShowcase() {
- +
@@ -118,7 +118,7 @@ export default function DividerShowcase() {
Gray
-
Black
+
Base
Green
@@ -138,7 +138,7 @@ export default function DividerShowcase() {
- +
@@ -158,7 +158,7 @@ export default function DividerShowcase() {
- +
@@ -178,7 +178,7 @@ export default function DividerShowcase() {
- +
@@ -236,7 +236,7 @@ export default function DividerShowcase() {
- Black: $white + Base: $white
#FFFFFF
@@ -267,7 +267,7 @@ export default function DividerShowcase() {
- Black: $gray-900 + Base: $gray-900
#111112
@@ -290,8 +290,8 @@ export default function DividerShowcase() {
-
Black - High contrast separation
- +
Base - High contrast separation (adapts to theme)
+
Green - Brand accent separation
@@ -433,7 +433,7 @@ export default function DividerShowcase() { {/* color */}
color
-
'gray' | 'black' | 'green'
+
'gray' | 'base' | 'green'
'gray'
Sets the divider color
diff --git a/shared/components/Divider/Divider.md b/shared/components/Divider/Divider.md index 80f48243ad..af0fb7a430 100644 --- a/shared/components/Divider/Divider.md +++ b/shared/components/Divider/Divider.md @@ -8,7 +8,7 @@ The Divider component is a visual separator that creates clear boundaries betwee - **Two Orientations**: Horizontal (default) and Vertical - **Three Stroke Weights**: Thin (0.5px), Regular (1px), Strong (2px) -- **Three Color Variants**: Gray (default), Black, Green +- **Three Color Variants**: Gray (default), Base (adapts to theme), Green - **Theme Support**: Automatic light/dark mode adaptation - **Accessibility**: Configurable for decorative or semantic use - **Flexible Sizing**: Inherits width/height from parent container @@ -21,8 +21,8 @@ interface DividerProps { orientation?: 'horizontal' | 'vertical'; /** Stroke weight - controls visual thickness */ weight?: 'thin' | 'regular' | 'strong'; - /** Color variant - gray (default), black for stronger contrast, green for brand emphasis */ - color?: 'gray' | 'black' | 'green'; + /** Color variant - gray (default), base for high contrast (adapts to theme), green for brand emphasis */ + color?: 'gray' | 'base' | 'green'; /** Additional CSS classes */ className?: string; /** Whether the divider is purely decorative (hides from screen readers) */ @@ -136,18 +136,18 @@ Neutral, subtle separation that works in most contexts without drawing attention ``` -### Black +### Base -High-contrast separation for maximum visibility. In dark mode, this renders as white for proper contrast. +High-contrast separation that adapts to the theme - renders as white in dark mode and black in light mode. **Best For:** -- When stronger contrast is needed -- Light backgrounds where gray may be too subtle +- When maximum contrast is needed - Important structural boundaries +- Universal high-visibility dividers **Usage:** ```tsx - + ``` ### Green @@ -297,7 +297,7 @@ Dividers are non-interactive elements and do not receive focus. ### Color Contrast - **Gray variant**: Meets contrast requirements on dark backgrounds; may need weight adjustment on light backgrounds -- **Black variant**: High contrast in both themes (renders as white in dark mode) +- **Base variant**: High contrast in both themes (adapts to theme - white in dark, black in light) - **Green variant**: Brand color provides good contrast in both themes ## Best Practices @@ -312,7 +312,7 @@ Dividers are non-interactive elements and do not receive focus. 5. **Maintain alignment** - Dividers should align with content; avoid full-width dividers in padded containers -6. **Use color purposefully** - Reserve green for branded emphasis; gray for most cases; black for high contrast needs +6. **Use color purposefully** - Reserve green for branded emphasis; gray for most cases; base for high contrast needs 7. **Test in both themes** - Verify dividers are visible and appropriate in both light and dark modes @@ -325,7 +325,7 @@ The component automatically adapts colors for light and dark modes: | Color | Dark Mode (Default) | Light Mode | |-------|---------------------|------------| | Gray | `$gray-600` (#454549) | `$gray-300` (#C1C1C2) | -| Black | `$white` (#FFFFFF) | `$gray-900` (#111112) | +| Base | `$white` (#FFFFFF) | `$gray-900` (#111112) | | Green | `$green-300` (#21E46B) | `$green-300` (#21E46B) | ## Related Components diff --git a/shared/components/Divider/Divider.scss b/shared/components/Divider/Divider.scss index 61e73f7dd9..22ad5289cb 100644 --- a/shared/components/Divider/Divider.scss +++ b/shared/components/Divider/Divider.scss @@ -9,7 +9,7 @@ // .bds-divider--regular - Regular stroke weight (1px, default) // .bds-divider--strong - Strong stroke weight (2px) // .bds-divider--gray - Gray color variant (default) -// .bds-divider--black - Black color variant +// .bds-divider--base - Base color variant (high contrast, adapts to theme) // .bds-divider--green - Green color variant // // Note: This file is imported within xrpl.scss after Bootstrap and project @@ -27,7 +27,7 @@ $bds-divider-strong: 2px; // Colors - Dark Mode (default, mapped from _colors.scss) // Site defaults to dark mode, uses html.light for light mode $bds-divider-gray-dark: $gray-600; // #454549 - visible on dark backgrounds -$bds-divider-black-dark: $white; // #FFFFFF - inverted for dark mode +$bds-divider-base-dark: $white; // #FFFFFF - high contrast for dark mode $bds-divider-green-dark: $green-300; // #21E46B - brand color stays same // Colors - Light Mode (mapped from _colors.scss) @@ -35,7 +35,7 @@ $bds-divider-green-dark: $green-300; // #21E46B - brand color stays same // Figma Black (#141414) → closest match: $gray-900 // Figma Green 300 (#21E46B) → exact match: $green-300 $bds-divider-gray-light: $gray-300; // #C1C1C2 -$bds-divider-black-light: $gray-900; // #111112 +$bds-divider-base-light: $gray-900; // #111112 - high contrast for light mode $bds-divider-green-light: $green-300; // #21E46B // ============================================================================= @@ -135,10 +135,10 @@ hr.bds-divider--gray, background-color: $bds-divider-gray-dark; } -// Black variant - uses white for contrast on dark backgrounds -hr.bds-divider--black, -.bds-divider--black { - background-color: $bds-divider-black-dark; +// Base variant - high contrast, adapts to theme (white in dark mode, black in light mode) +hr.bds-divider--base, +.bds-divider--base { + background-color: $bds-divider-base-dark; } // Green variant - branded, accent separation @@ -159,10 +159,10 @@ html.light { background-color: $bds-divider-gray-light; } - // Black variant in light mode - use dark color for contrast - hr.bds-divider--black, - .bds-divider--black { - background-color: $bds-divider-black-light; + // Base variant in light mode - use dark color for contrast + hr.bds-divider--base, + .bds-divider--base { + background-color: $bds-divider-base-light; } // Green variant stays the same in light mode (brand color) diff --git a/shared/components/Divider/Divider.tsx b/shared/components/Divider/Divider.tsx index 00d5d888e4..6c995689d6 100644 --- a/shared/components/Divider/Divider.tsx +++ b/shared/components/Divider/Divider.tsx @@ -5,8 +5,8 @@ export interface DividerProps { orientation?: 'horizontal' | 'vertical'; /** Stroke weight - controls visual thickness */ weight?: 'thin' | 'regular' | 'strong'; - /** Color variant - gray (default), black for stronger contrast, green for brand emphasis */ - color?: 'gray' | 'black' | 'green'; + /** Color variant - gray (default), base for high contrast (adapts to theme), green for brand emphasis */ + color?: 'gray' | 'base' | 'green'; /** Additional CSS classes */ className?: string; /** Whether the divider is purely decorative (hides from screen readers) */ @@ -29,8 +29,8 @@ export interface DividerProps { * // Strong green divider for emphasis * * - * // Thin black divider - * + * // Thin base divider (high contrast - adapts to theme) + * */ export const Divider: React.FC = ({ orientation = 'horizontal', diff --git a/static/css/devportal2024-v1.css b/static/css/devportal2024-v1.css index bb6d174f5f..5e80cbbae3 100644 --- a/static/css/devportal2024-v1.css +++ b/static/css/devportal2024-v1.css @@ -15180,8 +15180,8 @@ hr.bds-divider--gray, background-color: #454549; } -hr.bds-divider--black, -.bds-divider--black { +hr.bds-divider--base, +.bds-divider--base { background-color: #FFFFFF; } @@ -15194,8 +15194,8 @@ html.light hr.bds-divider--gray, html.light .bds-divider--gray { background-color: #C1C1C2; } -html.light hr.bds-divider--black, -html.light .bds-divider--black { +html.light hr.bds-divider--base, +html.light .bds-divider--base { background-color: #111112; } html.light hr.bds-divider--green,